如何 select 包含引号的元素?
How to select an element that contains quote marks?
当元素的属性包含引号 "
时,如何使用 querySelector
或任何其他 Javascript 选择器?
例如,如果我搜索具有 src
的 http://www.example.com/abc"def
的 img
元素(是的,包含引号的属性):
document.querySelector('img[src="http://www.example.com/abc"def"]');
它得到这个错误:
Uncaught DOMException: Failed to execute 'querySelector' on 'Document':'img[src="http://www.example.com/abc"def"]' is not a valid selector.
显然,我的问题适用于同时使用的单引号 '
和双引号 "
。
将引号替换为 &x22;
document.querySelector('img[src="http://www.example.com/abc&x22;def&x22;]');
var test = document.querySelector('img[src="http://www.example.com/abc\"def"]');`
当我写这篇文章时,至少对我来说似乎在 chrome 上工作。
你可以这样用\,JS应该能识别出它是字符串的一部分:
document.querySelector('img[src=\"http://www.example.com/abc\"def\"]');
当元素的属性包含引号 "
时,如何使用 querySelector
或任何其他 Javascript 选择器?
例如,如果我搜索具有 src
的 http://www.example.com/abc"def
的 img
元素(是的,包含引号的属性):
document.querySelector('img[src="http://www.example.com/abc"def"]');
它得到这个错误:
Uncaught DOMException: Failed to execute 'querySelector' on 'Document':'img[src="http://www.example.com/abc"def"]' is not a valid selector.
显然,我的问题适用于同时使用的单引号 '
和双引号 "
。
将引号替换为 &x22;
document.querySelector('img[src="http://www.example.com/abc&x22;def&x22;]');
var test = document.querySelector('img[src="http://www.example.com/abc\"def"]');`
当我写这篇文章时,至少对我来说似乎在 chrome 上工作。
你可以这样用\,JS应该能识别出它是字符串的一部分:
document.querySelector('img[src=\"http://www.example.com/abc\"def\"]');