我想在元素的父级中添加类。
dom的结构是:
<ul class="companies">
<li>
<a id=""></a>
<a id=""></a>
</li>
<li>
<a id=""></a>
<a id=""></a>
</li>
</ul>
“a”元素的所有id都是自动的。
我想将类添加到所选“a”的父“li”中。
这是我的代码:
$(".companies li a:selected").parent("li").addClass('selected');
selectDealer($(".companies li a:selected").attr("id"));
但是当我点击一个元素“a”时,它的父“li”将不会被选中。
有谁知道为什么?
由于
答案 0 :(得分:2)
我认为你所追求的是click
处理程序:
$(".companies li a").click(function() {
$(this).parent("li").addClass('selected');
selectDealer(this.id);
});
:selected
适用于selected
元素,例如<option>
中的<select>
元素。如果您希望在事件上发生某些事情,例如click
,请使用上面的事件处理程序。在处理程序内部,this
将引用事件发生的元素。
以上是为了说明,更有效的版本将使用.delegate()
,如下所示:
$(".companies").delegate("li a", "click", function() {
$(this).parent("li").addClass('selected');
selectDealer(this.id);
});
答案 1 :(得分:1)
链接不能为“:selected”,这仅适用于选项元素。因此,您的初始选择器失败。
答案 2 :(得分:0)
你确定a:选择可以这样使用吗?没有测试,我会说这是错误