У меня возникла проблема с формой onsubmit в IE 11. Когда кнопка отправки была запущена, вызывается функция doSomething() ". Внутри функции doSomething() я вызываю другую функцию, которая выполняет некоторые операции проверки ввода. Эта функция всегда возвращает false, но устанавливает флаг в true, если все ошибки проверки исчезли. Если для флага установлено значение true, функция doSomething() "возвращает true, и форма будет отправлена, и действие вызывается. Этот шаблон работает в Firefox, Chrome и Safari, но не в IE11. В IE он вызывает действие перед «doSomeValidation()» - функция готова. : -/Может ли кто-нибудь помочь мне здесь? Большое спасибо!!!Форма отправить в IE11 не работает
<form action="headToNextPage.php" onsubmit="return doSomething()">
JS
flag = false, // a global flag inside the js-script
function doSomeValidation(){
// validate the inputs and set "flag" to true if all errors are gone
}
function doSomething(){
doSomeValidation(); // do the validation stuff
if(flag==true) {
// do some other stuff
return true
}
return false;
}
Попробуйте 'console.log (window.flag, flag)', где вы его используете, и посмотрите, получаете ли вы то, что думаете. ALSO возвращает флаг вместо true или false: 'function doSomething() { doSomeValidation(); return flag;} ' – mplungjan
Не можете ли вы использовать небольшую проверку привязки html5? Почти не требуется js ... Вы можете показать нам полную html-форму? – Endless
Возможно, какой-то асинхронный вызов doSomeValidation – Mahi