You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Vanilla JavaScript解析script标签内嵌XML失败,求排查原因

问题原因及解决方案

核心问题出在XML内容的获取方式上:你使用了innerText提取<script>标签内的XML文本,但innerText会遵循浏览器的文本渲染规则处理内容——比如自动合并连续空白、去除换行符,这会破坏XML的原始结构,导致DOMParser无法正确解析。

正确的做法是改用textContent,它会完整保留<script>标签内的所有原始字符(包括换行、缩进空格),确保XML结构的完整性。

修正后的JavaScript代码:

const xmlStr = document.getElementById('xml').textContent;
const xmlDoc = new DOMParser().parseFromString(xmlStr,'text/xml');
console.log(xmlDoc.getElementById('bar').textContent);

你可以通过console.log(xmlStr)分别对比innerText和textContent的返回结果,就能直观看到差异:innerText返回的是经过渲染优化后的文本,而textContent返回的是和HTML中完全一致的原始XML代码。

内容的提问来源于stack exchange,提问作者Fravadona

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 20:34:59