0

我在 JavaScript 中有一个包含引号的字符串 - 例如,Don't click this checkboxHe said "hi". 我试图找到一个具有完全相同值的复选框。

对于我的第一个示例,我有 HTML:

<input type="checkbox" value="Don\'t click this checkbox">

我的变量 qDon't click this checkbox里面有字符串。要尝试查询此复选框,我有以下代码。我哪里错了?

q = q.replace("'", "\'").replace("\"", "\\"");
var $checkbox = $("input:checkbox[value='" + q + "']");
4

1 回答 1

0

问题在于第二个替换功能: .replace("\"", "\\"");

由于您在由双引号分隔的字符串中有双引号,因此您必须转义内部双引号。或者,让自己轻松一点并使用单引号:

q = q.replace("'", "\'").replace('"', '\"');
于 2013-03-17T22:02:13.163 回答