У меня есть эти сценарии, которые включают или отключают кнопку отправки. Моя проблема здесь в том, что я хочу удалить текущий класс (желтый) и добавить новый (зеленый), если входы не пустые. Также значение кнопки, которую я хочу изменить, "Заказать сейчас!" продолжать!". Я пробовал проверять поля с помощью if-statement, но это не сработало, единственная часть, на которую я могу работать, - это не работает, или нет.
Моя кнопка отправки выглядит так:
<input type="submit" class="submit-order-btn yellow" value="Order now!">
Мой jQuery выглядит так:
var $submit = $('.submit-order-btn'),
$inputs = $('input[type=text]');
function checkEmpty() {
return $inputs.filter(function() {
return !$.trim(this.value);
}).length === 0;
}
$inputs.on('blur keyup', function() {
$submit.prop("disabled", !checkEmpty());
}).blur();
// DEBUG BEGIN \\
$submit.on("click", function() {
alert("Submitted");
});
// DEBUG END \\
Я не понимаю, когда вы хотите, чтобы класс и изменение ценности произошли, вы имеете в виду вот так?
$inputs.on('blur keyup', function() {
$submit.prop("disabled", !checkEmpty());
if (!checkEmpty()) {
$submit.removeClass('yellow').addClass('green');
$submit.val('Proceed!');
} else {
$submit.removeClass('green').addClass('yellow');
$submit.val('Order now!');
}
}).blur();
Вы имеете в виду что-то вроде .addClass('')
и .removeClass('')
? Пример: http://fiddle.jshell.net/AJLsz/
вы можете сделать это только с помощью css:
.yellow{
background-color:green;
}
input[type="submit"]:disabled{
background-color:yellow;
}
см. здесь: http://jsfiddle.net/FR75Q/
checkEmpty()
лиcheckEmpty()
? Или вам нужна помощь, чтобы выяснить это?