我有一个禁用的发件人按钮,当表单有效时会启用该按钮。使用下面的函数,我正在检查更改,如果表单仅包含输入,它可以工作。如何检查其他元素(如选择或复选框(的更改?
$("#create-rule-form").parsley();
$('input').on('keyup', function() {
$("#create-rule-form").parsley().validate();
if ($("#create-rule-form").parsley().isValid()) {
$('#create-rule-btn').prop('disabled', false);
} else {
$('#create-rule-btn').prop('disabled', 'disabled');
}
});
使用 jQuery 的:input
选择器,它匹配所有用于表单输入的标签。
$(":input").on('edit change').function() {
// code here
});
您可以使用$('form').find('*')
选择表单的所有子项和孙项,然后将事件应用于所有这些子项,如下所示。
另外,附带说明一下,我相信您应该处理的事件是change
而不是keyup
,因为keyup
不适用于复选框和下拉列表。
$('form').find('*').on('change', function() {
//do stuff
});