2016-08-19 69 views
3

在我的代码我检查用户度是否完整与否,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(); 
     } 
}); 

我都试过了,

$('#yearOfQualifyingDegree option[value>2016]').remove(); 

但是,这也没有工作。 那么它缺少什么?

PS:我使用JQuery1.11.0

回答

4

无由你使用的选择器的目标所需的元素。你需要在这里使用.filter()函数:

$('#yearOfQualifyingDegree option').filter(function(){ 
    return parseInt(this.value,10) > 2016; 
}).remove(); 
+0

和第二个要求(第二个问题)?两个过滤器? – piechuckerr

+0

change'return parseInt(this.value,10)> 2016;'to'return(parseInt(this.value,10)> 2016 && this.value> -1);' –