我注意到,浏览器在读取TXT文件源iframe的innerHTML时,会将左方括号<,右方括号>和&编码为各自的代码(&lt; /&gt; /&amp;)。如何阻止这种情况的发生?innerHTML也将包装在<pre>标记中。
例如,假设我在TXT(不是HTML)文件中包含以下内容:
<div>
Hello world! I love M&M's candy.
</div>
以下iframe:
<iframe id="MyIframe" src="/hello.txt"></iframe>
以及以下JavaScript:
var MyIframe = document.getElementById('MyIframe');
alert(MyIframe.contentWindow.document.innerHTML);
弹出警告对话框,并显示以下内容:
<pre>
<div>Hello world! I love M&M's candy.</div>
</pre>
如何阻止JavaScript使用TXT文件的内容执行此操作?我只想要文件的原始,未编码的内容。
我不能使用XMLHTTPRequest。
取而代之的检索.innerHTML
,检索.textContent
。这应该以人类可读的形式仅返回元素树中的人类可读文本。您可以通过检查问题中的一个HTML示例并$0.textContent
在开发人员控制台中进行编写,在此页面上进行尝试。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句