如何知道jQuery中更改的输入值

时间:2020-03-17 06:15:24

标签: jquery dom

我在过滤器选项中工作。这里有多个输入字段。就像一个选择一样,输入文本,单击按钮。所有这些都属于一个名为“ filter-option”的类。当其中任何一项修改后,我必须提醒jQuery内部的值。

我尝试了下面的代码,但是没有用。

$("body").on('DOMSubtreeModified', "filter-option", function() {
    alert('changed');
});

3 个答案:

答案 0 :(得分:1)

如果您希望元素中发生任何更改时均触发该事件,则可以使用 change,keyup,blur 事件。

$("body").on('change keyup blur', "filter-option", function() {
   alert('changed');
});

另请参阅:Detecting input change in jQuery?

答案 1 :(得分:0)

您可以使用Keyup功能。

Keyup

<script type="text/javascript">
 $(document).ready(function () {
   $('#SelectorName').keyup(function () { alert('text changed'); });
 });
</script>

使用keypress

keypress

<input type="text">

jQuery

$(document).ready(function(){
  $("input").keypress(function(){
  alert("clicked");
  });
});

或使用blur()

blur

blur仅在您单击在输入字段中输入值的其他内容时才为您提供更改事件。

function yourFunction() {
  alert("clicked");
}
<input type="text" id="fname" onblur="yourFunction()">

答案 2 :(得分:0)

我认为最好的方法是在表单的data-attribute中存储一个标志。

$(document).on("change", "#your_form_id :input", function () {
$("#your_form_id").data("changed", true);
alert("changed");
});

它将调用form标记内所有输入字段的change事件。