javascript - 文件中的文本不等于标记 ID 中的文本

标签 javascript html

我有一个包含标签名称的 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/

相关文章:

javascript - CSS 有效但不能动态应用

javascript - 动态创建表列标题

css - 无法将 btn-group 中的按钮向右拉

javascript - 制作包含单选按钮的下拉菜单

javascript - 电子邮件验证表单错误

javascript - Canvas/JavaScript - 单击鼠标翻转正方形的颜色

javascript - 如何使用:nth-child() for different background-colors when adding elements with JavaScript

javascript - 分数不递增

javascript - 在没有服务器的情况下运行html时如何将文件夹设置为根路径

html - 如何垂直对齐顶部和主菜单?