我是新手使用jQuery ..
我有一个类似的列表
<ul id="abc">
<li><a id="sp">test</a></li>
<li><a id="sb">test2</a></li>
</ul>
如何根据ID
更改文字我试过这样的事情
$("#abc li").click(function() {
if($("#abc li a").attr('id') == 'sp')
alert(111111);
});
警报从未弹出。
这里可能有什么问题
谢谢。
答案 0 :(得分:0)
试试这个:
$("#abc li").click(function() {
if($('a', this).get(0).id == 'sp')
alert(111111);
});
答案 1 :(得分:0)
$("#abc li").click(function() {
if($("#abc li a").attr('id') == 'sp')
alert(111111);
});
应该有效http://jsfiddle.net/eTFR5/1/
和
一样$("#abc li").click(function() {
if($('a', this).get(0).id == 'sp')
alert(111111);
});
根据jquery docs
.attr()方法仅获取匹配集中第一个元素的属性值。
和你的问题
如何根据ID
更改文字
$("#abc li").click(function() {
$("#sp").text("whatever you like");
});
答案 2 :(得分:0)
除非您有特定的原因想要点击列表项本身而不是链接,否则将点击处理程序放在<a>
标记上,如下所示:
$('#abc a').click(function() {
if (this.id === 'sp') {
alert(this.id);
}
return false;
});