У меня есть форма, которая отправляется через ajax в фоновый код, и я пишу функцию общего отключения в javascript, которую я могу использовать для установки onclick элемента. Введя это в браузер, игнорируйте любые синтаксические ошибки в следующем.Internet Explorer 7 onclick событие на кнопку отправки не срабатывает
function(elementID , processingText) {
var element = document.getElementById(elementID);
if (element) {
element.setAttribute("onClick", "alert('test')");
}
}
В принципе элемент должен иметь событие onclick для установки предупреждения. Я могу подтвердить, что атрибут onclick настроен правильно, и он запускается в IE8 +, Chrome и Firefox. Он не срабатывает в IE7.
Элемент, который я тестирую, представляет собой кнопку отправки в форме (одна форма на странице). Он имеет много полей и одну кнопку отправки.
EDIT код рассылает с действием, так что не следует представить в любом случае, но не до тех пор, после того, как оповещение было признано /EDIT
Я тралил сеть в течение последних двух часов и следующих решений не работают или не являются опцией-
Добавить скрытое поле ввода для формирования. Wrap submit в теге и установите onclick в этом теге. Смена случая onclick to onClick
Любые решения, связанные с изменением html без использования javascript, не являются опцией, я пытаюсь создать общую функцию disableElement. Я могу настроить таргетинг на сценарий в IE7, чтобы он не работал во всех браузерах, а только в IE7.
Любая помощь будет принята с благодарностью
Как использовать 'element.onclick = function() {alert ('test');};' вместо установки атрибута? – MaxArt
Лучший ответ здесь - это просто отказаться от поддержки IE7 полностью - вряд ли кто-то все еще использует его. Теперь его пользовательская база упала ниже IE6. Я ценю, что это не может быть для вас вариантом, в зависимости от вашей ситуации, но если это ваше решение сделать, я бы рекомендовал его, потому что очень много хлопот поддерживать IE7, и вы получите практически нулевой выигрыш от Это. – Spudley