• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

429
Views
¿Por qué el evento de cambio de jquery no se activa cuando configuro el valor de una selección usando val ()?

La lógica en el controlador de eventos change() no se ejecuta cuando val() establece el valor, pero se ejecuta cuando el usuario selecciona un valor con el mouse. ¿Por qué es esto?

 <select id="single"> <option>Single</option> <option>Single2</option> </select> <script> $(function() { $(":input#single").change(function() { /* Logic here does not execute when val() is used */ }); }); $("#single").val("Single2"); </script>
about 3 years ago · Santiago Trujillo
3 answers
Answer question

0

Debido a que el evento de change requiere un evento de navegador real iniciado por el usuario en lugar de mediante un código JavaScript.

Haz esto en su lugar:

 $("#single").val("Single2").trigger('change');

o

 $("#single").val("Single2").change();
about 3 years ago · Santiago Trujillo Report

0

Creo que puede activar manualmente el evento de cambio con trigger() :

 $("#single").val("Single2").trigger('change');

Aunque por qué no se dispara automáticamente, no tengo idea.

about 3 years ago · Santiago Trujillo Report

0

Agregar este fragmento de código después de val() parece funcionar:

 $(":input#single").trigger('change');
about 3 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error