2017-06-22 59 views
0

我有7個選項的下拉列表。我需要使用java腳本獲取第二個選項的值。我寫了一些東西,但它不起作用。如何獲得使用java腳本的倒數第二個元素

$('.checkbox4').on('click', function(e) { 
    var last_chekbox4 = $('.checkbox4:last.prev()'); 
    if (last_chekbox4.is(':checked')) { 
     $('.checkbox4').prop('checked', false); 
     $(this).prop('checked', true); 
    } 
}); 
+0

所有複選框是兄弟,如果他們是在同一容器中。 @Apurba:你能不能顯示你的html? – Mic

+0

您是否檢查了控制檯的錯誤,或者可能使用了'console.log(last_chekbox4)'來確保您的目標是正確的元素? – NewToJS

回答

0

您有7個元素。使用nth-of-type選擇

$(".checkbox4:nth-of-type(6)"); 

要選擇倒數第二個option

1

使用prev()方法

$('.checkbox4:last').prev() 

如果在兩者之間,然後用

$('.checkbox4:last').prevAll('.checkbox4').first() 

僅供參考一些其他的因素:如果元素不是兄弟,上述方法不起作用。


UPDATE: 或者得到其排除使用 :not()和jQuery :last最後一個集合中的最後一個。

$('.checkbox4:not(:last):last') 

或按索引使用eq()方法。

var $col = $('.checkbox4'); 
// get element by index, where index starts from 0 
var $ele = $col.eq($col.length - 2); 
+0

這個很好。 +1 –

+0

@Pranav C這是唯一的工作,如果所有複選框在同一個容器(例如div)? – Mic

+0

@Mic:nop但它只會得到最後一個 –

相關問題