gpt4 book ai didi

javascript - jQuery 捕获表单上命名输入的所有更改

转载 作者:行者123 更新时间:2023-11-29 16:28:38 25 4
gpt4 key购买 nike

我试图确定表单中一组命名输入/选择/单选/选中/隐藏字段中的任何一个何时发生更改。

特别是,我想捕获对与 jQuery 选择器 $("form :input") 匹配的字段进行任何更改的时间,以及该输入具有 name 属性。但是,表单不是静态的,即某些字段是稍后动态添加的。

我最初的想法是跟踪何时添加与 :input 匹配的新命名元素,然后添加一个事件处理程序,如下所示:

function on_change() {
alert("The form element with name " + $(this).attr("name") + " has changed");
}

function reg_new_e_handler(input_element) {
input_element.change(on_change);
}

但是,我非常希望能够通过一些 jQuery 魔法来避免这种情况。特别是,有没有一种方法可以在 jQuery 中注册一个事件处理程序来处理与以下内容匹配的输入元素:

$("form :input").filter( function () { $(this).attr("name") } ).change(on_change);

但是,每当添加新的输入元素时,都会更新此事件集。

我认为可以使用 $("form").keyup(on_change)< 捕获 form 节点上的 keyup 事件,但我不太确定如何捕获 change 事件。

我还希望它能够捕获 keyup 事件。

感谢您的阅读。

布莱恩

最佳答案

您正在寻找live events .
例如:

$(':input[name="something"]'.live('change', function(e) {
//Do things
});

使用 .live 添加事件处理程序将处理与选择器匹配的所有元素的事件,无论它们何时添加。

关于javascript - jQuery 捕获表单上命名输入的所有更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3019039/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com