none
Evento textbox con mvc RRS feed

  • Pregunta

  • Hola a todos, soy nuevo en mvc y necesito me guien para solucionar un problema que tengo.

    estoy migrandome de webforms a mvc, y quisiera que me explicaran o me dieran un ejemplo de como hago en mvc los eventos de los textbox mas especifico, el evento OnTextChanged="TxtValorRecibido_TextChanged", como seria en mvc este evento o me podrian dar un ejemplo?

    domingo, 26 de noviembre de 2017 0:41

Todas las respuestas

  • Los eventos se producen en el front-end, podrías capturarlos mediante JavaScript o JQuery, por ejemplo:

    - View (HTML/Razor)
    @Html.TextBoxFor(model => model.nombreCliente)

    - JQuery

    <script type="text/javascript">
    
        $(document).ready(function () {
    
            $('#nombreCliente').on('change', function () {
                alert($(this).val());
            })
        })
    
    </script>

    domingo, 26 de noviembre de 2017 0:59
  • estoy migrandome de webforms a mvc

    Cuando haces esta migración, es muy importante que "cambies el chip" y dejes de pensar en la programación orientada a eventos, porque sino te vas a estrellar una y otra vez según vayas avanzando en el programa.

    Aunque efectivamente, como ya te han indicado en una respuesta anterior, puedes manejar eventos en el lado cliente usando javascript, tienes que dejar de pensar en eventos en el lado servidor tales como los tenías en webforms. Con MVC el concepto es distinto: se trasvasan datos desde el cliente al servidor al hacer un POST, y eso hace que se ejecute un método de acción. En el método de acción analizas los datos y tomas decisiones en función de ellos. El resultado de esas decisiones sería el equivalente de lo que en webforms habrías hecho en un evento. Por ejemplo, podrías examinar el valor que has recibido desde el textbox y compararlo con el valor anterior (que tendrías que conservar por tu cuenta, aquí ya no hay ViewState), y si los valores difieren, ejecutas algo de código, que sería el equivalente de lo que habrías metido en el TextChanged en un WebForm.

    domingo, 26 de noviembre de 2017 10:11