Javascript 如何搜索具有可能包含&;的值的选项#34; 或';在绳子上?
编辑: 这个问题可能过于简化了。值字符串实际上是从另一个源派生的变量,因此我不知道在哪里添加转义字符Javascript 如何搜索具有可能包含&;的值的选项#34; 或';在绳子上?,javascript,jquery,Javascript,Jquery,编辑: 这个问题可能过于简化了。值字符串实际上是从另一个源派生的变量,因此我不知道在哪里添加转义字符 if ($("#test option[value='this\"']").length == 0 ) { $('body').append('true'); } else {$('body').append('false');} 我本以为:var-temp=mySTRING.replace(“\”,“\\\”)本来可以工作,但它没有…。使用转义字符来匹配引号 if ($('#test
if ($("#test option[value='this\"']").length == 0 ) {
$('body').append('true');
}
else {$('body').append('false');}
我本以为:
var-temp=mySTRING.replace(“\”,“\\\”)
本来可以工作,但它没有…。使用转义字符来匹配引号
if ($('#test option[value="this""]').length == 0 ) {
$('body').append('true');
}
else {$('body').append('false');}
if ($("#test option[value='this"']").length == 0 ) {
$('body').append('true');
}
else {$('body').append('false');}
更新
作为对更新的响应,您说值字符串在变量中,因此可以用转义字符替换它
if ($("#test option[value='this\"']").length == 0 ) {
$('body').append('true');
}
else {$('body').append('false');}
选中使用转义字符与引号匹配
if ($('#test option[value="this""]').length == 0 ) {
$('body').append('true');
}
else {$('body').append('false');}
if ($("#test option[value='this"']").length == 0 ) {
$('body').append('true');
}
else {$('body').append('false');}
更新
作为对更新的响应,您说值字符串在变量中,因此可以用转义字符替换它
if ($("#test option[value='this\"']").length == 0 ) {
$('body').append('true');
}
else {$('body').append('false');}
选中您可以使用带有正则表达式的筛选函数来获取所有选项,这些选项的值包含
'
或“
您可以将筛选函数与正则表达式一起使用,以获取包含
'
或“
不需要在正则表达式中转义引号。这看起来是正确的,
&34代码>在被解析为DOM元素值之前,由HTML解析器解码为“
+1不需要转义正则表达式中的引号。这看起来是正确的,"代码>在被解析为DOM元素值之前,由HTML解析器解码为“
+1您是否尝试过var temp=mySTRING.replace(";,“\”);您是否尝试过var temp=mySTRING.replace(";,“\”);这看起来很奇怪。字符串'#test选项[value=“this\”“]”
用撇号括起来,这意味着\“
中的转义无效(忽略)。因此,选择器引擎接收到的测试选项[value=“this”“]”
看起来不太有效。我已将“
切换为”
,但仍然可以正常工作:您能看一下吗?干杯。是的,在属性值周围加上单引号,如“#test option[value='this\']]”
看起来不错。但是,答案中的“#test option[value='this\']
看起来有点可疑。虽然它似乎也能起作用。我猜这个记录器寻找一个关闭<代码> [/COD] >以便在属性值中间的<代码> 不会破坏它,尽管它仍然很奇怪。代码>=]
是的,我还想知道标记器是如何做到的。今天学到了一些新东西。更新了答案,干杯,顺便说一句,在你的替换中,只是吹毛求疵。这看起来很奇怪。字符串'#test选项[value=“this\”“]”
用撇号括起来,这意味着\“
中的转义无效(忽略)。因此,选择器引擎接收到的测试选项[value=“this”“]”看起来不太有效。我已将“
切换为”
,但仍然可以正常工作:您能看一下吗?干杯。是的,在属性值周围加上单引号,如“#test option[value='this\']]”
看起来不错。但是,答案中的“#test option[value='this\']
看起来有点可疑。虽然它似乎也能起作用。我猜这个记录器寻找一个关闭<代码> [/COD] >以便在属性值中间的<代码> 不会破坏它,尽管它仍然很奇怪。代码>=]是的,我还想知道标记器是如何做到的。今天学到了一些新东西。更新了答案,干杯,顺便说一句,在你的替补中,只是吹毛求疵。