在我的VB.NET项目中,我有一个带有一些文本输入字段和一个保存/提交按钮的UI。我希望保存按钮在页面加载时处于禁用状态,并保持这种状态,直到对其中一个输入进行更改。如果用户输入的值与页面加载时的值相同,则应再次禁用保存按钮。所以基本上,只有在实际发生变化时才应启用保存按钮。
如何使用jquery执行此操作?
答案 0 :(得分:3)
$(':input').change(
function(){
$("#submitButtonId").prop("disabled",false);
}
);
因为您说它是动态的,请使用on
。
$(document).on("change", ":input",
function(){
$("#submitButtonId").prop("disabled",false);
}
);
答案 1 :(得分:2)
您可以在change
事件
$('input[type="text"]').on('change', function() {
// Change event fired..
$('input[type="submit"]').prop('disabled', false);
});
答案 2 :(得分:2)
//This will bind all existing and dynamically added selects onChange to the handler
$(document).on('change', function(e) {
onChangeHandler();
}
// handle the event
function onChangeHandler() {
if (checkValues()) {
$('#yourButtonId').prop("disabled", false);
}
else {
$('#yourButtonId').prop("disabled", true);
}
}
// check all values against originals - data-* attributes are a good way to store data on
// an element. So have you can have:
<select id="id1" data-originalvalue="myValue"></select>
// compare the current value to the original value - if any one of them differ, return
// true
function checkValues() {
$.each($('select[data-originalvalue]'), function() {
if ($(this).val() !== $(this).attr(data-originalvalue){
return true;
}
return false;
});
}