javascript - 如何搜索其值可能在字符串中包含“或”的选项?

标签 javascript jquery

<select id='test' size='1'><option value='this&#34;'>this&#34;</option></select>

这些都不起作用:

if ($('#test option[value="this&#34;"]').length == 0 ) {
   $('body').append('true');
}
else {$('body').append('false');}
if ($("#test option[value='this&#34;']").length == 0 ) {
   $('body').append('true');
}
else {$('body').append('false');}

FIDDLE

编辑:

这个问题可能过于简单化了。值字符串实际上是一个从另一个源派生的变量,所以我不知道在哪里添加转义字符。

我本以为: var temp = mySTRING.replace('\"','\\\"'); 会起作用,但它没有......

最佳答案

您可以将过滤函数与正则表达式结合使用来获取值包含 '" 的所有选项

var x = $('#test option').filter(function () {
    return /'|"/.test(this.value);
});
if (x.length) {
    $('body').append(x.length + ' true');  
} else {
    $('body').append('false');
}

FIDDLE

关于javascript - 如何搜索其值可能在字符串中包含“或”的选项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16577255/

相关文章:

javascript - 处理对象数组并将它们分配为 4 个一组

javascript - 将状态变量值保存到另一个以恢复功能不起作用

javascript - Syntastic with jslint for vim 不执行检查器

javascript - 如何将参数传递给由事件处理程序触发的函数?

javascript - jQuery 弹出/叠加效果

javascript - 文本选择事件结束?

javascript - HighCharts 实体仪表图不显示刻度

javascript - <br> 当我 alert() PRE 标签的内容时被删除

jquery - 使用 whiteSpace-nowrap 后如何删除水平滚动条并使文本区域具有固定高度

javascript - 使绝对定位的div覆盖视口(viewport)