1

嘿,我想弄清楚为什么,当我用数据填充我的页面时,当我尝试在一个它永远找不到它的复选框上执行 .click 事件时......但是当我在页面上有代码而没有被收集时从ajax它工作得很好?

jQuery(document).ready(function () {
   jQuery('#selectAll').click(function () {
       console.log('hit');
   });
});

<th scope="col" id="cb" class="manage-column column-cb check-column">
    <input id="selectAll" type="checkbox">
</th>

如果复选框代码在开始的页面上,上面的代码就可以正常工作,但如果通过ajax填充相同的代码则不起作用

我会做错什么?

4

1 回答 1

4

用于委托事件

jQuery(document).ready(function () {
  jQuery(document).on('click','#selectAll',function () {
     console.log('hit');
  });
});

如果元素是动态生成的,则需要委托事件...但是,建议将其委托给比document自身最近的静态父容器以获得更好的性能..链接以阅读有关委托事件的更多信息

于 2013-04-30T17:15:17.680 回答