我有嵌套元素:
<ul class="level-1">
<li class="item-i">I</li>
<li class="item-ii">II
<ul class="level-2">
<li class="item-a">A</li>
<li class="item-b">B
<ul class="level-3">
<li class="item-1">1</li>
<li class="item-2">2</li>
<li class="item-3">3</li>
</ul>
</li>
<li class="item-c">C</li>
</ul>
</li>
<li class="item-iii">III</li>
</ul>
单击时如何从li class="item-1">1</li>
获取值(它为'1')?我有定义右选择器的问题...如何结束这样的事情:
$(all children of level-1).click(function() {
alert($(this.item-1").val(););
}
答案 0 :(得分:3)
试试这个
$(this).text()
或$(this).html()
.val()
用于输入字段..因此您无法使用.val()
$('.level-1 li').on('click', function(e) {
alert($(this).contents().filter(function() {
return this.nodeType == 3
}).text());
e.stopPropagation();
});
不要忘记e.stoppropagation()
..否则你也会看到父李的内容......
答案 1 :(得分:0)
我已经创建了fiddle并进行了一些测试,我想这可以满足您的需求
这是我做的:
$('.level-3').children('.item-1').css('color', 'red');
希望这有帮助。
答案 2 :(得分:-1)
$(".level-1 li").click(function() {
console.log($(this).val());
});
请阅读jQuery事件和选择器: http://docs.jquery.com/Main_Page