Sto provando a modificare l'evento 'onchange' di un elemento 'select' esistente.Come modificare l'attributo 'onchange' in un tag 'select'? (usando jquery)
Per esempio fini Ho il codice seguente:
<select id="sel_id" onchange="javascript:foo();" >
e ogni volta che provo a cambiare il suo 'onchange' attributo Sono stato con il seguente:
$("#sel_id").attr("onchange", "foo_2()");
proposito, questo codice che dovrebbe va bene, non funziona, l'attributo 'onchange' rimane invariato. Quindi come dovresti modificarlo?
AMMENDMENT:
È possibile rimuovere l'attributo e quindi associare una funzione diversa, come:
$("#sel_id").removeAttr("onchange").bind("change", function(){ foo_2(); });
ma il problema rimane, è possibile cambiare il 'onchange' attributo senza rimuoverlo innanzitutto?
Sì, questa è la risposta corretta, ho certo bisogno di rimuovere l'evento e legare il mio utilizzando jQuery. – vitorhsb
'$ ('sel_id'). Attr ('onchange', undefined) .change (function() {foo_2();});' è il modo jQuery per farlo. In questo modo puoi semplicemente eseguire entrambe le operazioni con un oggetto jQuery. – Muhd
Anche OP potrebbe probabilmente solo eseguire ".change (foo_2)" invece di eseguire il wrapping in una funzione anonima. – Muhd