У меня есть кнопка отправки, мне нужно, чтобы эта кнопка была отключена только после одного нажатия, и она не должна быть отключена, если есть ошибки проверки. я использую следующее,
onclick="var e = this; setTimeout(function () { e.disabled = true; e.value='Please wait...'}, 0); return true;"
но это заставляет кнопку оставаться отключенной, если есть ошибки проверки, которые я не хочу.
вот код кнопки отправки
<input type="submit" onclick="var e = this; setTimeout(function () { e.disabled = true; e.value='Please wait...'}, 0); return true;" value="Confirm Selected" />
Как мне добиться этого с помощью jquery
или JavaScript
?
Примечание: я рассмотрел вопросы переполнения стека, но ответы не обрабатываются, когда есть ошибки проверки.
2 ответа
Это действительно зависит от используемой вами валидации и от того, как все установлено.
Это может сработать, если вместо тайм-аута вы попробуете с setInterval ();
Вы можете иметь флаг, который установлен как «отключить» при нажатии кнопки, вы также можете инициировать интервал, который будет проверять наличие ошибок каждые N секунд. Если ошибок нет, она вызовет функцию, которая изменит кнопку отправки на начальное / новое состояние, изменит флаг «отключить» и очистит интервал.
Если вы используете проверки HTML
, например, тег ввода
с type email
, вам следует использовать отправка формы
вместо нажатие кнопки
, потому что форма отправляется только тогда, когда в форме нет ошибок. Для отправки формы вы можете попробовать, как показано ниже:
$('form').on('submit', function(e){
});
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript / JS) и его различных диалектах / реализациях (кроме ActionScript). Включите все соответствующие теги в свой вопрос; например, [node.js], [jquery], [json] и т. д.