Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/436.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何为ajax返回的html标记注册事件?_Javascript_Jquery - Fatal编程技术网

Javascript 如何为ajax返回的html标记注册事件?

Javascript 如何为ajax返回的html标记注册事件?,javascript,jquery,Javascript,Jquery,我是jquery的新手,所以我不知道我的题目是否正确。对于回发html标记,我可以注册类似的事件: $(document).ready(function () { $(":input[data-autocomplete]").each(function () { ...}); 现在,我需要允许用户通过触发ajax调用并附加包含新项目标记的服务器响应来单击按钮添加更多项目: $(this).click(function(){ $.get("my url", {}, function

我是jquery的新手,所以我不知道我的题目是否正确。对于回发html标记,我可以注册类似的事件:

$(document).ready(function () {
 $(":input[data-autocomplete]").each(function () {
 ...});
现在,我需要允许用户通过触发ajax调用并附加包含新项目标记的服务器响应来单击按钮添加更多项目:

$(this).click(function(){
     $.get("my url", {}, function (data) {$("#xxx").append(data);});
     });
我的问题是:现在在返回的“数据”中有一些带有属性[data autocomplete]的新标记,如何为它们注册相同的事件?谢谢

尝试在上使用委派事件:

尝试在
上使用委派事件:


您的意思是:追加内容包括一些新的输入,您需要在追加后注册事件,如下所示

$(this).click(function(){
    $.get("my url", {}, function (data) {
        $("#xxx").append(data);
        $("#xxx").find(":input[data-autocomplete]").each(function () {
        ...});
    });
});

您的意思是:追加内容包括一些新的输入,您需要在追加后注册事件,如下所示

$(this).click(function(){
    $.get("my url", {}, function (data) {
        $("#xxx").append(data);
        $("#xxx").find(":input[data-autocomplete]").each(function () {
        ...});
    });
});

我没有看到您在代码中注册任何事件,但看起来您希望在每个匹配项上初始化插件。请澄清?@bfavaretto是的,我想初始化ajax返回内容中输入的自动完成功能。我没有看到您在代码中注册任何事件,但看起来您想在每个匹配项上初始化插件。请澄清?@bfavaretto是的,我想初始化ajax返回内容中输入的自动完成功能。+1但他不需要每次收到具有该属性的对象时都这样做。为了更有效地处理,@daeshanagas answer更合适。您可以使用这个+1引用调用元素,但他不需要每次接收到具有该属性的对象时都这样做。为了更有效地处理@daeshanagas,answer更合适。您可以使用以下命令引用调用元素