如何在jQuery"活动"中通过ajax调用保留事件元素

rba*_*all 2 javascript jquery event-handling javascript-events

我通过ajax(post)请求将内容放在我的页面上,如下所示:

$("input#ViewMore").click(function() {
            var data = { before: oldestDate, threadId: 1 };
            $.post("/Message/More", data,function(html) {
                $('tbody#posts').prepend(html);
                return false;
            },
            "html");
            return false;
        });
Run Code Online (Sandbox Code Playgroud)

随着html回来看起来像:

消息输出报价

这一切都很好,花花公子,一切都应该出现,没有问题.

当我将一个事件挂钩到通过ajax调用添加的"quote"锚点时,就会出现问题.具体来说,该锚点上的jQuery事件不会触发.为什么?

例如:

$("#quote).click(function() { ... });
Run Code Online (Sandbox Code Playgroud)

什么也没做.像这样的行为没有任何事件.我知道它正在处理页面上没有通过ajax请求添加的其他锚点,所以那里没有代码错误,而且如果我刷新页面,它将会正确触发.有什么理由发生这种情况,我是否需要以某种方式重新初始化锚标记上的事件?有任何想法吗?

使用jQuery 1.3.1(也不适用于1.2.6)所以我认为这是我的实现而不是代码本身.

CMS*_*CMS 5

你可以使用jQuery 1.3的Events/live,live会将处理程序绑定到所有当前和未来匹配元素的事件.