Jquery .on似乎不适用于AJAX

时间:2014-03-08 21:25:26

标签: jquery ajax

为什么以下不起作用:

$(function()
{
    $('#settings').on('click', '.link', function(e)
    {
        e.preventDefault();
        alert('okay');
    });
});

...当只是将body添加到选择器使它工作?

$(function()
{
    $('body #settings').on('click', '.link', function(e)
    {
        e.preventDefault();
        alert('okay');
    });
});

$.getScript(...)#settings插入DOM后,$('body').append(...)调用执行此代码。
我想使用.on(),因为.link可以动态创建,我不想在整个地方重新绑定事件。

受影响的浏览器:Firefox,Chrome,可能更多 JQuery版本:1.11.0

1 个答案:

答案 0 :(得分:1)

ID must be unique

在这种情况下,您似乎可能有多个具有相同ID的元素,因此您将获得奇怪的行为。