首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jquery.ajax添加的元素上的jquery.select可能存在竞争问题

jquery.ajax添加的元素上的jquery.select可能存在竞争问题
EN

Stack Overflow用户
提问于 2011-05-06 15:45:50
回答 1查看 45关注 0票数 0

我有一个jquery-ajax(让我们称之为#1)函数,它绑定到一个由jquery.ajax本身添加的链接(称之为#2)。绑定到链接的函数(#1)在添加到文档中时会触发,因此函数(#1)没有问题。

问题似乎是绑定到链接的jquery.ajax(#1)函数在加载时找不到链接,当链接通过jquery.ajax(#2)加载时就太晚了。

我该如何克服这个问题呢?

js

代码语言:javascript
复制
$("a[name='searchCatalogue']").click(function(){
        var q = $("#query").val();
        $("#searchResults").html(ajax_load).load("search_data.php", {q:q});
});
$("a[name*='add-']").click(function(){
        var divname = this.name;
        var a = $("#field-"+divname).val();
        $("#materialLista").html(ajax_load).load("handler.php", {fetched_isbn:a});
});

由函数(#1)通过search_data.php添加:

代码语言:javascript
复制
<input type="text" id="field-add-'.$m.'" value="' . $resultat[$m]["value"] . '" /><a name="add-'.$m.'">Add</a>

如果在文档中“定期”添加上述内容(而不是使用函数(#2),则函数(#1)有效。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-06 15:51:28

您可以使用live..click而不是click。所以你会有:

代码语言:javascript
复制
$("a[name='searchCatalogue']").live("click", function(){
        var q = $("#query").val();
        $("#searchResults").html(ajax_load).load("search_data.php", {q:q});
});
$("a[name*='add-']").live("click", (function(){
        var divname = this.name;
        var a = $("#field-"+divname).val();
        $("#materialLista").html(ajax_load).load("handler.php", {fetched_isbn:a});
});

希望这能有所帮助。干杯

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5908312

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档