javascript - focusout 事件不适用于动态生成的文本框

标签 javascript jquery textbox jquery-focusout

//<![CDATA[ 
$(window).load(function() {

    $('.n_val').focusout(function() {
        alert(this.id);

    });

});//]]>

动态生成文本框

buffer += "<tr><td>" + nomen_list.getName() + "</td><td><input type='text' style='width:50px' class='n_val' id=" + nomen_list.getId() + "-" + nomen_list.getCat() + " value=" + nomen_list.getVal() + " /></td></tr>";

我得到了动态文本框,但是 focusout 不适用于动态生成的文本框,而同一页面有一些文本框,这是硬编码的,上面的脚本被触发。

最佳答案

$(window).load(function() {
    $(document).on('focusout','.n_val',function() {
        alert(this.id);
    });
});

您可以使用文本框最接近的父 ID 或类而不是使用文档。我不知道你的 html 布局,因此使用文档。另请参阅 jQuery。

关于javascript - focusout 事件不适用于动态生成的文本框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20419529/

相关文章:

javascript - 如何在 jQuery 中创建 CSS "ease"的等价项?

c# - C# TextBox 中的负数

java - 是否可以更改 SWT 中文本小部件的提示文本的颜色?

javascript - 对包含字符串、日期和数字的数组进行排序

javascript - 如何将文本拆分为 URL 数组和空格分隔的短语?

javascript - 将 ajaxed JSON 附加到现有表

javascript - 在两个文本字段中显示完全相同的选择范围

javascript - 单击可放大 WebGL

javascript - 恶意javascript注入(inject)(Hostads.cn)

javascript - 使用 javascript 在不同的行中加载单个 <td> 表数据