0

我有以下jquery ...

$(".parentElem").on("click", "input[id*='myitem']", function() {
    myfunction();
});

$(".parentElem").on("click", "input[id*='myotheritem']", function() {
    myfunction();
});

这些都可以正常工作,但我不想单独列出每个可点击的元素......我宁愿一次列出它们 - 像这样......

$(".parentElem").on("click", "input[id*='myitem'], input[id*='myotheritem']", function() {
    myfunction();
});

这可能吗?它似乎对我不起作用。

4

3 回答 3

3

.on()方法中的第二个参数是 CSS 选择器。因此,您不必传递每个单独的元素及其 ID。您可以像这样使用通用类或选择器:

$('.parentElem').on('click', 'input', function(event) {
    // Function body here
});
于 2013-07-19T15:15:21.397 回答
0

只需不要使用委托功能,而是自己进行检查:

$(".parentElem").on("click", function() {
    // check if event.target matches an element that you want to trigger on
});
于 2013-07-19T15:12:59.960 回答
-2

这对我有用:

$(".parentElem").find("input[id*='myitem'], input[id*='myotheritem']").each(function(){
    $(this).click(function(){
        myfunction();
    });
});

演示

于 2013-07-19T15:19:07.913 回答