我有以下的jQuery代码:
基本上,div中包含了一个嵌套的无序列表,其中有几个"Add_#"链接。点击链接会使用ajax调用来重新创建带有新节点的列表。它清除了所有添加链接,但是它们会被ajax调用再次添加。这就是为什么我使用.live方法,以便新添加的“Add_#”链接仍然具有绑定。
在大多数情况下,这有效。如果我单击“Add_1”,则div将使用新信息刷新。如果我接着点击“Add_2”,那么它如预期一样工作。
我遇到问题的情况是,当我单击“Add_1”时,页面会刷新(并创建一个新的“Add_1”链接),然后我再次单击重新渲染的“Add_1”。它是相同的链接,但是它在ajax调用期间已被刷新。当我这样做时,javascript函数仍然被调用,但.load方法不起作用。任何想法为什么会发生这种情况?谢谢。
我有以下的jQuery代码:
$("a[id*='Add_']").live('click', function() {
//Get parentID to add to.
var parentID = $(this).attr('id').substring(4);
//Get div.
var div = $("#CreateList");
//Ajax call to refresh "CreateList" div with new unordered list.
div.load("/AddUnit?ParentID=" + parentID);
});
基本上,div中包含了一个嵌套的无序列表,其中有几个"Add_#"链接。点击链接会使用ajax调用来重新创建带有新节点的列表。它清除了所有添加链接,但是它们会被ajax调用再次添加。这就是为什么我使用.live方法,以便新添加的“Add_#”链接仍然具有绑定。
在大多数情况下,这有效。如果我单击“Add_1”,则div将使用新信息刷新。如果我接着点击“Add_2”,那么它如预期一样工作。
我遇到问题的情况是,当我单击“Add_1”时,页面会刷新(并创建一个新的“Add_1”链接),然后我再次单击重新渲染的“Add_1”。它是相同的链接,但是它在ajax调用期间已被刷新。当我这样做时,javascript函数仍然被调用,但.load方法不起作用。任何想法为什么会发生这种情况?谢谢。