Событие JavaScript не работает с IE7
Когда я выбираю любой параметр в списке, он должен напечатать его значение в текстовом поле (все html).
Я старался
stafflist.setAttribute("onchange", "javacript:document.getElementById('id_17_enrolpassword').value = this.value;");
Он работает в IE8+ и во всех современных браузерах, но не в IE7.
Также попробовал
stafflist.addEventListener('onchange',"javacript:document.getElementById('id_17_enrolpassword').value = this.value;",false);
Итак, какие изменения я должен сделать здесь?
4 ответа
1) javascript: label требуется только в том случае, если первый скрипт на странице vbscript.
2) это работает лучше?
document.getElementById('stafflist').onchange=function(){
document.getElementById('id_17_enrolpassword').value = this.value;
}
?
IE только увольняет onchange
событие, когда элемент теряет фокус - если вы должны были щелкнуть за пределами элемента или вкладки для другого элемента, он должен сработать.
Вы можете обойти это, используя другой четный, например, onkeypress
Сделай это так -
stafflist.onchange = function(){
document.getElementById('id_17_enrolpassword').value= this.value;
}
Я знаю, что это на самом деле не отвечает на поставленный вопрос, но разве вы не можете использовать что-то вроде jQuery для кодирования такого рода даже обработок?
Код немного более читабелен (ИМХО), и вам не придется решать эти проблемы кросс-браузерного сценария самостоятельно.