Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jquery筛选器选择其选项中包含一些字符串的选项_Jquery_Jquery Selectors - Fatal编程技术网

jquery筛选器选择其选项中包含一些字符串的选项

jquery筛选器选择其选项中包含一些字符串的选项,jquery,jquery-selectors,Jquery,Jquery Selectors,考虑以下选择 <select id="phone_line" name="phone_line"> <option value=""></option> <option value="BB-11">Line 1</option> <option value="AA-22">Line 2</option> <option value="AA-33">Line 3</

考虑以下选择

<select id="phone_line" name="phone_line">
    <option value=""></option>
    <option value="BB-11">Line 1</option>
    <option value="AA-22">Line 2</option>
    <option value="AA-33">Line 3</option>
    <option value="BB-44">Line 4</option>
</select>
如果要删除其值
AA
开头的行?我可以按如下方式处理每个问题:

$("#phone_line > option").each(function () {    
    if (this.value.substring(0, 2) === 'AA') {
        $("#phone_line option[value='" + this.value +"']").remove();
    }
});
但是我可以用过滤器(在一行中)来完成吗。代码位于:

您可以使用
$(“#电话线选项”).filter('[value^=“AA”]')。remove()

尝试以下操作:

$(“#电话线”).find('option[value^=“AA”]).remove()

选择电话线。。。
第1行
第2行
第3行
第4行

使用属性
开始选择器将执行此操作

$('#phone_line option[value^="AA"]').remove();
参考资料:

对于更复杂的过滤,请使用
filter(函数)


我认为这样做很有效:

$('#phone_line option').filter(' option[value^="AA"] ').remove();

谢谢带有子字符串的过滤器可以为复杂值选择做更多的工作。是的,当然可以。还有其他属性选择器,但对于绝对控制,这是最好的
$("#phone_line > option").filter(function () {    
   return this.value.substring(0, 2) === 'AA';
}).remove();
$('#phone_line option').filter(' option[value^="AA"] ').remove();