2013-10-05 80 views
1

我有一個由CMS創建的下拉列表,我無法訪問源代碼。下拉列表提供了一組從1902年到2040年不等的日期。我想刪除某個點後的所有日期。我知道我可以使用下面的jQuery來taget具體日期,並刪除它們:通過jQuery從下拉列表中刪除選項集

$("#field_22_year option[value='2036']").remove(); 

但是,什麼是刪除一組數字的最有效的方式,說1996年之後的一切嗎?

回答

3

George Mavritsakis的答案是合適的。 但你也可以做到這一點:

$('#field_22_year option[value]').each(function() { 
    if($(this).attr("value") > 2036) { $(this).remove(); }; 
}); 
+0

這很好,非常感謝! – Kev

3

使用

$('#field_22_year option[value]').filter(function() { 
    return $(this).attr("value") > 1996; 
}).remove(); 

在這裏看到如何在這裏使用過濾器:Jquery filter()

1
function remove_date_after(initial_date){ 
     $('#field_22_year').children().each(function(){ 
      if($(this).val() > initial_date) 
        $(this).remove(); 
     }); 
} 

這裏初始日期是要刪除的下拉選項的值。例如,您可以撥打電話remove_date_after(1996),這將刪除所有值大於1996的選項。

相關問題