javascript - jQuery 事件不会在动态生成的内容上触发

标签 javascript jquery .net

我使用 ASP.NET MVC 4 动态加载包含选项的 PartialView。我想将 jQuery dblclick 事件绑定(bind)到此并获取所选选项,但该事件未触发。这是我的代码:

 <select size="5" id="popup-list">
     <option value="test">test</option>
 </select>

jQuery 代码:

$(document).ready(function(){

    $("#popup-list").live("dblclick", function () {
        var name;
        $("select option:selected").each(function () {
            name = this;
            name = this.text();
        });
    });

});

我不确定为什么这会导致问题。代码位于 document.ready() 中,它应该负责动态加载。

最佳答案

使用jquery的On方法。

$("body").on("dblclick", "#popup-list", function () {
    var name;
    $("select option:selected").each(function () {
        name = this;
        name = this.text();
    });
});

注意:on 方法在 jquery 版本 7 及以上版本中可用

关于javascript - jQuery 事件不会在动态生成的内容上触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29076594/

相关文章:

Jquery选择器: jquery function which alters the style of the `<li>` containing the 'quit' link

javascript - 使用 jQuery 知道何时加载@font-face 字体?

c# - WPF 中的 DataGridView 绘制错误

jquery - 当用户在此部分处于事件状态时,菜单下划线

c# - 如何使用 "is"来测试类型是否支持 IComparable?

C# Cookie - Expires 属性不会设置

javascript - 对象中的函数

javascript - CORS 设置 Cookie 不起作用

javascript - 我应该将 Javascript 放在 HTML 文件的头部还是主体中?

javascript - 如何将我的验证函数变成 ajax 方法?