2011-09-14 42 views
1

我與CSS background-color: #efefef;jQuery來獲得最後的高亮元素值

我想獲得最後的價值凸顯list item已應用到它selectedli類具有許多list items稱爲selectedli

這是我的代碼...

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script> 
    $('#btnSelect').click(function() { 
     alert($('#wrapper').find('li').filter("[class=leaf]").last().text()); //bingo 
     alert($('#wrapper').find('li').hasClass('selectedli').last().text()); //fail to get value when the class got 2 value inside... 
     alert($('#wrapper').find('li').filter('selectedli').last().text()); //fail to get value when the class got 2 value inside... 
     alert($('#wrapper').find('li .selectedli').last().text()); 
    }); 
</script> 

<div id="wrapper"> 
    <div id="panel" class="cats1"> 
     <ul id="list_items"> 
      <li class="root" data-category_id="1">Fashion</li> 
      <li class="root selectedli" data-category_id="2">Computer</li> 
     </ul> 
    </div> 
    <div id="panel" class="cats1"> 
     <ul id="list_items"> 
      <li class="root" data-category_id="5">Laptop</li> 
      <li class="root selectedli" data-category_id="6">Monitor</li> 
     </ul> 
    </div> 
    <div id="panel" class="cats1"> 
     <ul id="list_items"> 
      <li class="leaf" data-category_id="13">LCD Dell</li> 
      <li class="leaf selectedli" data-category_id="14">LCD Acer</li> 
     </ul> 
    </div> 
</div> 

<input type="button" id="btnSelect" value="Select"> 

我似乎無法讓我的代碼工作。有人可以幫助我解決這個問題。

+0

如果你解決了你的問題,你應該標記其中一個答案是正確的:) –

+0

感謝小夥子,我也發現我自己的問題,.find('li .selectedli')不起作用,但.find('li。 selectedli')將工作。敏感的語法聲明在這裏。 –

回答

1

試試這個:

$("#list_items .selectedli").last().data("category_id"); 

DEMO(更新):http://jsfiddle.net/ugdYm/1/

+0

糟糕,在那裏犯了一個錯誤 - 現在修復:) –

0

只是做$("#list_items li.selectedli").last().attr("data-category_id");

更新:失蹤last()

+0

這將得到*第一個*項目,而不是最後一個 –

+0

@Jens - 修復了答案,謝謝! –

0

一個建議,不要」使用jQuery 1.5這個v ersion有問題。