我正在根据其value属性从一组单选按钮中选择一个单选按钮。除非value属性包含单引号,否则一切都很好。我在绑定值之前对其进行编码,因此它在html标记中不会引起任何问题。但是jquery在尝试进行选择时没有工作。 问题仅出在IE7中。
单选按钮标记:
<input type='radio' name='radName' value='value1'>
<input type='radio' name='radName' value='value2'>
<input type='radio' name='radName' value='value3'>
Jquery选择单选按钮:
myVal = funToGetSomeValue();
if ($('input[name=radName][value="' + myVal + '"]').length) {
$('input[name=radName][value="' + myVal + '"]').prop('checked', true);
}
使用 HtmlEncode 编码后面代码中的特殊字符(C#):
System.Web.HttpUtility.HtmlEncode(EmailStr);
此处一切都很好,除非 myVal 包含带单引号的值。
有什么想法吗?
答案 0 :(得分:0)
在将字符串插入jquery选择器之前,需要转义字符串中的任何引号。为此,使用双反斜杠转义所有单引号:
myVal.replace(/\'/gi, "\\\\'")