-1

我有以下html:

<ul id="tree3" class="checkboxTree[1] checkboxTree">
 <li class="collapsed">
 <li class="collapsed">
 <li class="collapsed">
 <li class="collapsed">
 <li class="collapsed">
 <span>
 <input class="checktree" type="checkbox" value="19" fullname="MyName">

我正在尝试捕获复选框的更改事件。这工作正常:

$(".checktree").change(function () {
    UpdateSelectedList();
});

但我需要确定它的范围,因为页面上有多个“.checktree”。我试过这样做:

$("#tree3 > .checktree").change(function () {
    UpdateSelectedList();
});

或这个:

$("ul#tree3 > .checktree").change(function () {
    UpdateSelectedList();
});

但他们似乎没有开火。有人可以建议上述选择器有什么问题吗?

4

1 回答 1

2

选择器中的>元素表示子元素。由于您.checktree不是 的直接孩子#tree3,因此它不起作用。尝试#tree3 .checktree或者#tree3 > li > span > .checktree如果您想要完全匹配。

jQuery 子选择器jQuery 后代选择器

于 2012-04-06T05:33:02.427 回答