jQuery选择器因字符串中的双引号而失败[重复]
Posted
技术标签:
【中文标题】jQuery选择器因字符串中的双引号而失败[重复]【英文标题】:jQuery selector fails with double quotes in string [duplicate] 【发布时间】:2021-06-22 08:43:30 【问题描述】:我将以下选择器与包含双引号的字符串一起使用:
var something = 'This string contains "double" quotes';
$('*[my-data-attribute="' + something + '"]').click(function ()
);
这给出了:
未捕获的错误:语法错误,无法识别的表达式
解决这个问题的最佳方案是什么?
【问题讨论】:
你试过用反引号(``)代替单引号吗? 这能回答你的问题吗? quotes in Jquery selectors 使用:$('*[my-data-attribute="' + something.replace(/"/g, '\\"') + '"]')
使用\斜线,这是管理单引号和双引号的最佳或简单的方法。
【参考方案1】:
您不能使用一个单引号和第二个双引号。您需要使用相同的引号,例如
var something = 'This string contains "double" quotes';
$('*[my-data-attribute="" + something + ""]').click(function ()
);
【讨论】:
嗨,欢迎来到 SO。您可以创建一个 sn-p(编辑并单击[<>]
,复制您的代码并从左侧的选项中添加 jquery)来演示您的代码工作。在这种情况下,您的代码会给出类似的错误:Syntax error, unrecognized expression: *[my-data-attribute="" + something + ""]
Using ""
doesn't "escape" the quote in javascript(它可能是其他语言(VB?))以上是关于jQuery选择器因字符串中的双引号而失败[重复]的主要内容,如果未能解决你的问题,请参考以下文章
Snowflake COPY INTO 在数据值中的双引号值上失败
如何用撇号替换字符串中的双引号(不是指定它是字符串的外部双引号)
Kafka 连接器记录写入器因缺少要分配的内存而卡在 S3OutputStream 中,但在几个小时内保持空闲状态并没有失败