Я просмотрел множество тем по этому поводу, но ни одно из решений мне не подходит. Мне нужно включить кнопку отправки, только если есть данные, которые будут отправлены, и снова отключить ее, если данных нет.
$("input").each(function() {
$(this).keyup(function() {
console.log("keyup event fired");
$("input").each(function() {
if ( $(this).val() !== "" ) {
empty = false;
} else {
empty = true;
}
});
if ( empty ) {
$("#download-project").addClass("isDisabled");
$("#download-project").click(function(e) {
e.preventDefault();
});
} else {
$("#download-project").removeClass("isDisabled");
$("#download-project").click(function(e) {
e.preventDefault();
$(".editor-form").submit();
});
}
});
});
Мой текущий код включает только кнопку, а затем, если пользователь удаляет данные, не отключает кнопку. Глядя на консоль, кажется, что клавиша срабатывает только один раз.
JSFiddle