Per i menu di selezione, l'evento di modifica si verifica quando un'opzione viene selezionata dagli eventi Pulsanti della tastiera e del mouse e da NoScript in modo efficace. Per i campi di testo o le aree di testo, l'evento di modifica si verifica quando il campo perde lo stato attivo. quindi non è possibile utilizzare "cambiamento evento" direttamente (senza selezionare qualsiasi opzione da tastiera o mouse) provare questo cod:
<select name="subpos" id="subpos">
<option value="examplel">examplel</option>
<option value="sample">sample</option>
<option value="fortest">fortest</option>
</select>
<script>
$(function() {
$('#subpos').change(function() {
console.log('subpos has changed');
});
$("#subpos").val('sample');//combo box has change but dont appear in console log. why?
});
</script>
dopo l'esecuzione; vedere il log della console non è possibile visualizzare "subpos è cambiato" nel log della console. ma in azione 'i sottovi hanno cambiato' cosa è successo? dovrebbe essere registrato alla console quando la selezione cambia. ora selezionando tale opzione dal menu a discesa è possibile vedere il log di cosole è cambiato
fonte
2013-01-01 16:05:49
Il codice sembra corretto. Puoi elaborare esattamente ciò che non funziona, o forse dare un caso d'uso in cui questo codice non funziona? – Tejs
Il codice è corretto, il problema non è lì. Puoi spiegare ulteriormente? – Flater
Il tuo codice funziona (hai cambiato console.log in un avviso per semplificarti la vita qui.) Http://jsfiddle.net/NJskv/ – ridecar2