无法使用 Javascript 呈现 XML

尝试将 XML 存储在变量中然后呈现它时,没有显示任何内容。


XML 字符串数据示例: <?xml version="1.0" encoding="UTF-8"?>


在下面的脚本中,testvar1会呈现,但不会呈现testvar2.


<!doctype html>

<html>

<head>

<meta charset="utf-8">

</head>

<body>

    <div id="target"></div>

<script>

    var testvar1 = "balls";

    var testvar2 = `<?xml version="1.0" encoding="UTF-8"?>`;

    document.getElementById("target").innerHTML = testvar1 + testvar2;

</script>

</body>

</html>

我想不出这不起作用的原因。但我可能忽略了一些对其他人来说显而易见的东西......


当年话下
浏览 197回答 2
2回答

大话西游666

显而易见的原因是浏览器将您的 XML 解释为有效标签并尝试呈现您的 XML 元素。如果要向用户显示纯 XML,请使用textContent属性而不是innerHTML:<!doctype html><html><head><meta charset="utf-8"></head><body>&nbsp; &nbsp; <div id="target"></div><script>&nbsp; &nbsp; var testvar1 = "balls";&nbsp; &nbsp; var testvar2 = `<?xml version="1.0" encoding="UTF-8"?>`;&nbsp; &nbsp; document.getElementById("target").textContent = testvar1 + testvar2;</script></body></html>

UYOU

这不是可以渲染的代码,因为浏览器无法渲染带有属性的xml标签。<?xml version="1.0" encoding="UTF-8"?>如果要渲染它,则必须跳过 HTML 标记,例如:<!DOCTYPE html><html>&nbsp; <head>&nbsp; &nbsp; <meta charset="utf-8" />&nbsp; </head>&nbsp; <body>&nbsp; &nbsp; <div id="target"></div>&nbsp; &nbsp; <script>&nbsp; &nbsp; &nbsp; var testvar1 = "balls";&nbsp; &nbsp; &nbsp; var testvar2 = `&lt;?xml version="1.0" encoding="UTF-8"?&gt;`;&nbsp; &nbsp; &nbsp; document.getElementById("target").innerHTML = testvar1 + testvar2;&nbsp; &nbsp; </script>&nbsp; </body></html>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript