我有一个包含标签名称的 text.txt 文件:
tagforinserttext
我有一个包含下一个代码的页面
<div class="header">
<h1 id="tagforinserttext"></h1>
</div>
在 JS 代码中,我读取文件并将“tagforinserttext”放入变量“tag”中。 然后我尝试插入一些文本,使用
document.getElementById(tag).innerHTML = "sometext";
但是现在插入了文本...
我发现 getElementById(tag) 没有指向页面中标签的链接,但是如果我写 getElementById('tagforinserttext') 那么它就起作用了!
然后我尝试将变量与文本进行比较,发现它们不相等......它们相等,因为通过 alert() 输出时变量中的文本等于'tagforinserttext'
我不明白我在哪里犯了错误,希望得到您的帮助。
最佳答案
根据我通知你做的评论
console.log(escape(tag))
这表明您有 %0D 这是一个换行符,因此您正在阅读的文件中有一个换行符。因此,您可以从文件中删除换行符或使用正则表达式来删除换行符。
tag = tag.replace(/\r?\n|\r/g,"")
更好的解决方案是使用 JSON,这样您就可以更轻松地解析和获取字符串。
关于javascript - 文件中的文本不等于标记 ID 中的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45675201/