在ajax之后进行事件onclick

时间:2017-06-22 10:12:33

标签: javascript jquery html jquery-selectors

所以,我找到选择器时遇到了一些问题。

$(document).on('click', 'input[type=checkbox]', function () {
    alert("hello!");
});

因此,如果我需要在页面上找到所有复选框,那么该代码可以正常工作。但! 我需要找到

内的复选框
<ul id="sortable-menu">
  <li>
     <input type="checkbox" id=${category['id']} />//so, id is dynamic
  </li>
</ul>

请帮助解决我的小问题。谢谢!

2 个答案:

答案 0 :(得分:1)

你传递给jQuery的是CSS选择器,所以你可以描述你正在寻找的结构:

$(document).on('click', '#sortable-menu li input[type=checkbox]', function () {
    alert("hello!");
});

答案 1 :(得分:0)

只需使用最接近的静态父代表委派事件

$('#sortable-menu').on('click', ':checkbox', function () {
    alert("hello!");
});

如果sortable-menu也是动态生成的

$(document).on('click', '#sortable-menu :checkbox', function () {
    alert("hello!");
});

代替document始终使用最接近的静态容器以获得更好的性能。