Как отключить кнопку отправки с помощью jquery
У меня есть простая форма для проверки значения введенного пользователем почтового кода от переменной,
Я пытаюсь отключить кнопку отправки и делать чек и давать предупреждающее сообщение, я не могу понять, что я делаю неправильно, любая помощь будет оценена.
<form id="post_code">
<input name="textfield" type="text" id="postcode" size="14" maxlength="8" />
<input type="image" id="submit_postcode" src="images/B_go.png" alt="Submit Postcode" width="59" height="24" border="0" />
</form>
$(function() {
$('form#post_code').submit(function() {
var entered_post_code = $('form#post_code input#postcode').val();
var post_code = "CV";
if (entered_post_code == post_code) {
alert("post code is ok");
return true;
}else {
alert("post code is not ok");
return true;
}
return false;
});
});
Ответы
Ответ 1
W3C рекомендует отключить этот атрибут = "отключено", поэтому:
$('#submit_postcode').attr('disabled', 'disabled');
Повторное включение может быть выполнено путем удаления атрибута:
$('#submit_postcode').removeAttr('disabled');
Установка атрибута в любое значение приводит к его отключению, даже .attr('disabled', 'false'), поэтому его нужно удалить.
Ответ 2
$('#submit_postcode').attr('disabled', 'disabled');
Ответ 3
Если проверка совпадает с вами, вы возвращаете true, и если она не соответствует... вы также возвращаете true. Линия return false
никогда не достигается.
Вероятно, вы хотите изменить одну из своих истин на false и устранить строку вне блока if/else.
Ответ 4
Это код, который я использую для отключения или повторного включения элемента управления:
function handleControlDisplay(className, foundCount, checked) {
var button = jQuery(className);
if (foundCount > 0 && foundCount == checked) {
// enable
button.removeAttr("disabled");
}
else {
// set the disabled attribute
button.attr("disabled", "true");
};
}
Ответ 5
var entered_post_code = $('form#post_code input#postcode').val();
// rewrite as
var entered_post_code = $("#post_code input[id=postcode]").val();
Вы должны вернуть false, если почтовый код не подходит. нет?
возможно, ваш, если он никогда не будет решен как истинный, и он всегда возвращается как false. Использование функции submit() правильное.
Ответ 6
//disable
$('#submit_postcode').attr('disabled', true);
//re-enable
$('#submit_postcode').removeAttr('disabled');