我在文档准备好了多个功能。所有被ids调用点击功能。
$(function(){
$('#show').click(function(){
//do something
});
$('#cancel').click(function(){
//do something
});
$('#send').click(function(){
//do something
});
});
在#show中,我创建了一个创建#cancel和#send id的元素。但是当它们被点击时没有任何反应,也没有在调试时出现任何错误。
在#show中,我在变量中编写了所有HTML,然后使用.append将其放置到位。
答案 0 :(得分:1)
正如jQuery docs所说:事件处理程序仅绑定到当前选定的元素;在您的代码调用.on()
时,它们必须存在于页面上(而click(...)
只是on('click',...)
的快捷方式
处理此问题的一种方法是在那里描述的委托事件。在你的情况下,它可能是这样的:
$(function(){
$('#show').click(function(){
//do something
});
$('body').on('click', '#cancel', function(){
//do something
});
$('body').on('click', '#send', function(){
//do something
});
});