jquery如何使用正则表达式选择<选项>

Rok*_*oko 3 javascript jquery

我想使用正则表达式从签入和签出中删除 2014 年和 2015 年 -

在此输入图像描述

我尝试使用 containsRegex 但我想我做错了什么:

$("option:containsRegex(/^((2014)|(2015))$/)").remove();
Run Code Online (Sandbox Code Playgroud)

这是示例代码:

<select name="check_in" class="required">
    <option value="">Year</option>
        <option value="2013" selected="selected">2013</option>  
        <option value="2014">2014</option>
        <option value="2015">2015</option>
        <option value="2016">2016</option>
</select>

<select name="check_out" class="required">
    <option value="">Year</option>  
        <option value="2013" selected="selected">2013</option>  
        <option value="2014">2014</option>
        <option value="2015">2015</option>   
        <option value="2016">2016</option>
</select>
Run Code Online (Sandbox Code Playgroud)

我可以这样做:

$('option:contains("2014")').remove();
$('option:contains("2015")').remove();
Run Code Online (Sandbox Code Playgroud)

但我希望能够使用正则表达式来做到这一点,因为真实的文件比这更复杂。这是小提琴: http: //jsfiddle.net/PJjGb/1/,所以你可以尝试。

总而言之,我想删除“select”元素的某些“选项”。并能够使用正则表达式选择哪个选项 - 在此示例中,使用正则表达式从签入和签出中删除选项“2014”和“2015”。谢谢。(这里我没有使用正则表达式来做到这一点:http://jsfiddle.net/PJjGb/

ade*_*neo 5

不知道为什么你需要正则表达式,但它是:

$('option').filter(function() {
    return /(2014|2015)/.test(this.value);
}).remove();
Run Code Online (Sandbox Code Playgroud)

小提琴