onchange wird nicht ausgelöst, nachdem Sie programmgesteuert ändern von html-select-dropdown

Habe ich ein select in HTML

<select id="league" name="league">

was höre ich für änderungen in meinem javascript.

var league = dojo.byId("league");
dojo.connect(league, "onchange", function (evt) { //do stuff }

Welche gut funktioniert.
Allerdings habe ich einen link, den ich klicken kann, welche updates der wählen Sie:

<a href=javascript:void(0) onclick="updateSelection(league);"> League </a>

Der link funktioniert, wie es aktualisiert den ausgewählten Wert der wählen Sie mit der folgenden Funktion.

function updateSelection(NewLeague){
dojo.byId('league').value = NewLeague;  //works
dojo.byId('league').onChange;   //this isnt working
//dojo.byId('league').onChange();  //this throws: TypeError: dojo.byId("league").onChange is not a function 
}

Mein problem, wie ich gelesen habe, durch andere Stapel Beiträge ist, dass programmgesteuert aktualisieren Sie den Wert nicht trigger onChange, also muss ich anrufen onchange im code (siehe oben). Wie pro die inline-Kommentare, die onChange wird nicht ausgelöst, oder wirft einen Fehler aus. Mein Erster Gedanke, dass es hat etwas zu tun mit dem dojo.Verbinden Sie das hört für onChange, aber ich habe nicht gefunden, alle Informationen, die sagt, ich kippe hierzu noch eine Erklärung, wie man sich es.

Irgendwelche Ideen?

dojo.byId('Liga').onChange(); funktioniert das?
NÖ, es wirft die "ist nicht eine Funktion" Fehler
Unrelated: versuchen Sie styling ein <button> anstatt die alten <a href="javascript:void(0)"> hack.

InformationsquelleAutor KHibma | 2012-10-18

Schreibe einen Kommentar