单击.on单击多个元素

时间:2013-07-19 15:09:18

标签: javascript jquery

我有以下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();
});

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

3 个答案:

答案 0 :(得分:3)

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

$('.parentElem').on('click', 'input', function(event) {
    // Function body here
});

答案 1 :(得分:0)

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

$(".parentElem").on("click", function() {
    // check if event.target matches an element that you want to trigger on
});

答案 2 :(得分:-2)

这对我有用:

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

DEMO