javascript - jQuery on() 无法正常工作

标签 javascript jquery

<分区>

美好的一天。 最近我开始学习 jQuery 并且在使用 jQuery 进行开发时我非常新手。

我对 .on() 事件有以下问题。我已经在堆栈溢出中搜索了答案,但我还没有为我的案例找到任何可行的解决方案。我有以下代码:

$('input.a').on('click',function(){
    $(this).after('<input class="a" type="button" value="click me">');
});

此函数工作正常,但生成的按钮在我单击它们时没有任何反应。我应该使用 .live();事件,但由于我使用的是 jQuery 1.10.2,因此不推荐使用此事件。访问 jQuery 文档后,我发现我应该按以下方式使用 .on()

$('input.a').on('click','input.a',function(){
    $(this).after('<input class="a" type="button" value="click me">');
});

但是一旦我这样做了,整个功能就会停止工作(我假设,因为我没有收到任何反馈),但是开发人员的控制台中也没有错误。 我是不是做错了什么,或者 .live() 事件是否有任何其他替代品?

最佳答案

您需要将处理程序绑定(bind)到一个已经存在的元素,在您的情况下,您将处理程序绑定(bind)到 input 元素本身......而不是将它绑定(bind)到所有目标输入的祖先元素存在于 dom ready 文档中的元素(如文档、正文等)

$(document).on('click','input.a',function(){
    $(this).after('<input class="a" type="button" value="click me">');
});

关于javascript - jQuery on() 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20639105/

相关文章:

javascript - 从另一个页面的输入中预填充表单数据

Jquery parent () 帮助

javascript - Node.js 命令行程序(使用 Commander Node-Module)在执行时打开 index.js

javascript - 添加 1 - Javascript Android Studio

javascript - jQuery 函数的范围

javascript - 当我从下拉列表中选择公司名称时 UpdatePanel AutopostBack=true 并且自动完成文本框不起作用

php - 用 php 回显 javascript 是不好的做法吗

php - ajaxCRUD : two questions about insert

javascript - 将 JSON 传递到循环中

javascript - $ ('.photos ul li' ).length 在我注入(inject)照片之前输出 0 并在它们出现时输出 5 但当我删除它们时它仍然显示 5