Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从字符串解析HTML var parser=新的DOMParser(), d=parser.parseFromString('Hello','application/xhtml+xml'); log(d.querySelector('*'); console.log(d.querySelector('div')); console.log(d.querySelector('div.a');_Javascript_Ajax - Fatal编程技术网

Javascript 从字符串解析HTML var parser=新的DOMParser(), d=parser.parseFromString('Hello','application/xhtml+xml'); log(d.querySelector('*'); console.log(d.querySelector('div')); console.log(d.querySelector('div.a');

Javascript 从字符串解析HTML var parser=新的DOMParser(), d=parser.parseFromString('Hello','application/xhtml+xml'); log(d.querySelector('*'); console.log(d.querySelector('div')); console.log(d.querySelector('div.a');,javascript,ajax,Javascript,Ajax,前两个选择器工作 最后一个选择器。。。。类选择器。。。。返回空值:( 你知道为什么吗 从AJAX查询html结果时需要此功能,但不想将其添加到主DOM中进行查询。试试: var parser = new DOMParser(), d = parser.parseFromString('<?xml version="1.0"?><div class="a">Hello</div>', 'application/xhtml+xml'); con

前两个选择器工作

最后一个选择器。。。。类选择器。。。。返回空值:(

你知道为什么吗

从AJAX查询html结果时需要此功能,但不想将其添加到主DOM中进行查询。

试试:

var 
    parser = new DOMParser(),
    d = parser.parseFromString('<?xml version="1.0"?><div class="a">Hello</div>', 'application/xhtml+xml');

console.log(d.querySelector('*'));
console.log(d.querySelector('div'));
console.log(d.querySelector('div.a'));
试试看:

var 
    parser = new DOMParser(),
    d = parser.parseFromString('<?xml version="1.0"?><div class="a">Hello</div>', 'application/xhtml+xml');

console.log(d.querySelector('*'));
console.log(d.querySelector('div'));
console.log(d.querySelector('div.a'));

因为你的html/xml无效。请尝试更改

因为你的html/xml无效。请尝试更改

谢谢你约瑟夫。我不知道如何在帖子中显示html标记。而且,对不起,马克·莱纳斯。我刚看到不匹配的标记。哇!谢谢你的帮助。没有解决问题,但我认为下面的Mark Linus有答案。事实上,两者都是正确的。最好的做法是根据这两个答案更正脚本谢谢你Joseph。我不知道如何使html标记出现在帖子中。而且,我很抱歉Mark Linus。我刚开始看到了不匹配的标记。哎哟。谢谢你的帮助。没有解决问题这个问题,但我认为下面的Mark Linus有答案。事实上,两者都是正确的。最好的做法是根据这两个答案更正您的脚本,并且您的脚本确实有效。有人将此答案的投票率高于我的答案!:)Mark,您的方法有效吗,因为使用div.a是无效的选择器?div[class=a]是否有效?我试着搜索了一下,但我不是100%知道这个术语是什么……我一直在得到div.a是有效的css示例。div.a是有效的,但我仍然不知道为什么,它可以与jQuery一起使用,但不能与document一起使用。querySelector和div[class=a]也是有效的,但它来自CSS3,所以一些旧浏览器不支持这个选择器。这是令人困惑的一点。选择“div.a”将对HTML页面的文档有效,但对DOMParser文档无效。不知道为什么。你的也行。有人把这个答案投得比我高!:)Mark,您的方法是否因为使用div.a是无效的选择器而起作用?div[class=a]是否有效?我试着搜索了一下,但我不是100%知道这个术语是什么……我一直在得到div.a是有效的css示例。div.a是有效的,但我仍然不知道为什么,它可以与jQuery一起使用,但不能与document一起使用。querySelector和div[class=a]也是有效的,但它来自CSS3,所以一些旧浏览器不支持这个选择器。这是令人困惑的一点。选择“div.a”将对HTML页面的文档有效,但对DOMParser文档无效。不知道为什么。