我想我几乎就在那里,但似乎无法在我的循环中隐藏某些选项值。目前整个选项选择值被隐藏。任何人都可以帮我调整它以使其工作
function initialStrandOptions() {
if($('#component_id_1').prop('checked') == true){
var strand_options = $('.strand_options').find('option')
strand_options.each(function(){
if(jQuery.inArray(strand_options, ['4', '5', '6', '7'])){
$(this).hide();
}
});
}
}
还有更好的方法来实现我的目标吗?
由于
答案 0 :(得分:2)
您需要检查循环中this
引用的当前迭代选项的值,并将其与inArray
返回的-1
进行比较:
function initialStrandOptions() {
if ($('#component_id_1').prop('checked') == true) {
var strand_options = $('.strand_options').find('option')
strand_options.each(function () {
if (jQuery.inArray(this.value, ['4', '5', '6', '7']) > -1) {
$(this).hide();
}
});
}
}
<强> Demo 强>