none
Ayuda con Ventana Modal RRS feed

  • Pregunta

  • estimados buenos dias,

    tengo mi desarrollo .net DBFirts, y a la tabla X, le tengo un metadata persolanizado.

    algunos campos de la tabla los valido con DataAnnotations; pero hay un campo que se debe validar con un ValidationAttribute, que va a la base de datos a realizar unos procesos y devuelve una respuesta, si el dato es 1 debe mostrarle la alerta al usuario que elija otro valor.

    esto funcionaba bien, pero me han solicitado que esa ventana de creación se muestre de manera Modal.

    Debido a este cambio, el campo con las validaciones personalizadas ha empezado a dar problemas, porque al ejecutar el Submit del modal, la acción create (POST) en el Controlador. cuando se ejecuta el return PartialView(model); se pierde el modal, es decir la View se muestra pero sin el efecto modal.

    la consulta es: como hago para mostrar las validaciones sin que se cierre la ventada modal?

    saludos cordiales


    Alfred

    sábado, 18 de abril de 2020 18:37

Todas las respuestas

  • hola

    >>al ejecutar el Submit del modal, la acción create (POST) en el Controlador. cuando se ejecuta el return PartialView(model); se pierde el modal,

    Si quieres mostra algo modal vas a tener que usar codigo cliente con javascript

    No vas a poder realizar un submit sino que vas a tener que realizar la operacion con $.ajax de jquery a ese action y retornar un json indicando si la operacion se realizo correctamente o el mensaje que mostraras con el alert() de javascript

    ASP.Net MVC: jQuery AJAX and JSON Example

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    sábado, 18 de abril de 2020 19:09
  • gracias Leandro por sus indicaciones, 

    resolví el inconveniente de la siguiente manera:

    1. en el metadata del modelo utilicé el atributo Remote y cree una action JsonResult en el controlador y traslade toda la lógica a esa nueva acción y ya funciona sin inconvenientes.

    muchas gracias


    Alfred

    sábado, 18 de abril de 2020 20:51
  • ok

    Entonces estas usando el ajax que se integra con asp.net mvc

    el Ajax.BeginForm()

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    sábado, 18 de abril de 2020 21:59