提问者:小点点

jQuery-按值查询文本框?(值包含引号)


我在JavaScript中有一个包含引号的字符串-例如,不要单击此复选框他说“hi”。我正在尝试找到一个具有完全相同值的复选框。

对于我的第一个示例,我有超文本标记语言:

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

我的变量q有字符串不要单击其中的此复选框。要尝试查询此复选框,我有以下代码。我哪里出错了?

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

共1个答案

匿名用户

问题出在第二个替换函数上:。替换("\"","\\"");

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

q = q.replace("'", "\'").replace('"', '\"');