Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法在js生成的复选框上触发复选框单击事件_Javascript_Jquery_Checkbox - Fatal编程技术网

Javascript 无法在js生成的复选框上触发复选框单击事件

Javascript 无法在js生成的复选框上触发复选框单击事件,javascript,jquery,checkbox,Javascript,Jquery,Checkbox,这是一个相当奇怪的问题,但我在这方面已经有相当长的时间了,现在甚至承认,我对此感到非常困惑。下面是: 当我的页面加载时,我有3个复选框可用。在左侧的菜单中有几个类别可供选择,单击其中的每个类别将执行$.getJSON请求,该请求通过将以下代码附加到tbody来构建新的复选框: str = '<tr><td><img src="/images/icons/'+icon+'.jpg" alt="'+shrt+'"></td><td>'+la

这是一个相当奇怪的问题,但我在这方面已经有相当长的时间了,现在甚至承认,我对此感到非常困惑。下面是:

当我的页面加载时,我有3个复选框可用。在左侧的菜单中有几个类别可供选择,单击其中的每个类别将执行$.getJSON请求,该请求通过将以下代码附加到tbody来构建新的复选框:

str = '<tr><td><img src="/images/icons/'+icon+'.jpg" alt="'+shrt+'"></td><td>'+labl+'</td><td>'+desc+'<br><span></span></td><td>'+pnts+'</td><td><input type="checkbox" name="status" class="status" '+checked+' id="'+i+'"></td></tr>';
$("#tbody_data").append(str);
str=''+labl+''+desc+'
'+pnts+''; $(“#tbody_data”)。追加(str);
现在,在pageload(通过php)生成的第一个页面上,我可以通过执行
$(“输入[type=checkbox]”)检查复选框是否被选中

但是,在我从上面提到的js生成一个新的复选框之后,我无法执行与上面相同的操作。它没有注意到一个点击事件,我也不知道为什么它不工作,这让我很恼火。即使我执行$(“body”)。单击(yadiyadi),控制台中也不会发生任何事情


提前感谢您提供的任何提示

正如上面Dhiraj和RandomBuffer所提到的,这就成功了——我试着只调用一个.click,document.body。感谢您的帮助章节。

您的.click()函数不起作用的原因是在DOM中存在复选框之前调用了代码,因此无法应用任何处理程序


使用
(文档)在动态创建的内容上。

选中此复选框是否将单击处理程序绑定到新插入的复选框?或者,更好的方法是:$(document.body);