[英]jquery select li element in hierarchical menu
我需要能夠在點擊時從特定的li
獲取文本,代碼如下:
<div>
<ul>
<li>list item 1</li>
<li>list item 2</li>
<li>
<ul>
<li>list item 3</li>
<li>list item 4</li>
<li>list item 5</li>
</ul>
</li>
<li>list item 6</li>
<li>
<ul>
<li>list item 7</li>
<li>list item 8</li>
<li>list item 9t</li>
</ul>
</li>
</ul>
</div>
在這種情況下,我需要通過其索引獲取“ 列表項5 ”。
編輯:
基本上,當點擊<li>list item 5</li>
,我想獲得這個particallar文本或值,當點擊其他東西時 - 什么都不做。 請注意,雖然菜單是分層的,但第5個元素表示第5個元素。 仔細檢查li
項目的文本以了解。
$('li').on('click',function(){
alert($(this).text());
});
好吧,看來eq
選擇器足以滿足您的需要。
$("li:eq(5)").click(function(){
var text = $(this).text();
})
你最好的解決方案是給這個項目一個id,或者至少是一個類,然后你可以做:
$("#myID").click(function() {
var text=$(this).text();
});
如果你不能這樣做,那么你可以嘗試使用各種導航選擇器,可能像(未經測試):
$("div>ul>li:nth-child(3)>ul>li:nth-child(3)").click(...
但這是一個非常尷尬的方法,可能會打破你在列表中添加更多項目的第二個方法。 (這是一個小提琴 - 只有在點擊你的列表項目5時它才會發出警報)
或者如果文本是靜態的,您可以選擇:
$("li:contains('list item 5')").click(...
如果該文本發生更改,或者其他節點包含相同的文本,則會再次中斷。
$('ul').on('click', 'li', function() {
console.log($(this).text());
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.