Jungs!JavaScript OnChange feuert nicht nur in Internet Explorer
Ich habe versucht, dies für eine Weile gelöst zu bekommen, und ich bin wirklich fest, so hoffe auf Ihre Hilfe. Dieser Code funktioniert in Chrome und Opera, funktioniert aber nicht in IE11. Ich weiß nichts über andere Versionen von IE. IE JavaScript ist aktiviert. Bitte nehmen Sie sich einen Blick, und mir sagen, dass ich falsch
<script type="text/javascript">
window.onload = function(e){
var list = document.getElementsByClassName('example');
switcher_combo = list[0];
switcher_combo.disabled = true;
switcher_combo.addEventListener("change", myFunction);
function myFunction() {
alert("Changed!")
}
}
function SetSel(value)
{
switcher_combo.value = value;
switcher_combo.selected = true;
switcher_combo.dispatchEvent(new Event('change'));
return false;
}
</script>
<select id="example1" class='example' name='emaple2'>
<option value="1">Option one</option>
<option value="2">Option two</option>
<option value="3">Option three</option>
</select>
<BR>
<a href="javascript:SetSel(2);">Change Combo to #2</a>
</body>
Welco Wenn ich Stack Overflow verwende, würde es viel mehr helfen, wenn Sie den Fehler hinzufügen, den Sie erhalten (drücken Sie F12 für Entwicklerwerkzeuge im Browser). Ich denke, dass die Antwort von Malaji gemäß der [Dokumentation] funktionieren sollte (https://developer.mozilla.org/en-US/docs/Web/API/Document/createEvent). Wenn dies nicht der Fall ist, geben Sie bitte Code und Fehler an, indem Sie Ihre Frage aktualisieren, anstatt nur anzugeben, dass es nicht funktioniert. – HMR
Seltsam, dass laut Dokumentation sowohl [dispatchEvent] (https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/dispatchEvent#Browser_Compatibility) und [getElementsByClassName] (https: //developer.mozilla .org/de-DE/docs/Web/API/Dokument/getElementsByClassName # Browser_compatibility) werden ab IE 9 und höher unterstützt. – HMR