jQuery:删除大于和小于的选择选项

Gov*_*are 3 javascript jquery

在我的代码中,我正在检查用户学位是否完整,

  • 如果它已完成(即单选按钮值为 true),我想从学位完成年份下拉列表中删除大于 2016 年的所有选项。
  • 如果学位未完成,我想删除所有小于 2016 年的选项(但不是 -1)。

这是我到目前为止所尝试过的,

$("input:radio[name=isDegreeComplete]").change(function() {

      var isDegreeCompleted = $('input:radio[name=isDegreeComplete]:checked').val();

      if (isDegreeCompleted == 'true') {
       $('#yearOfQualifyingDegree option:gt(2016)').remove();
      } 
      else 
      {
        $('#yearOfQualifyingDegree option[value<2016 && value>-1]').remove();
      }
}); 
Run Code Online (Sandbox Code Playgroud)

我努力了,

 $('#yearOfQualifyingDegree option[value>2016]').remove();
Run Code Online (Sandbox Code Playgroud)

但这也行不通。那么其中缺少什么吗?

PS:我使用的是JQuery1.11.0

Mil*_*war 6

您使用的选择器都没有定位所需的元素。您需要.filter()在这里使用函数:

 $('#yearOfQualifyingDegree option').filter(function(){
   return parseInt(this.value,10) > 2016;
 }).remove();
Run Code Online (Sandbox Code Playgroud)