document.write
在变量上工作正常。具有HTML标签的字符串上的document.write
也可以正常工作。但是,当尝试在带有HTML标签的JS变量上使用document.write
时,该程序将无法运行。
这是我的代码:
var Foo = "Foo Variable"
document.write(Foo)
document.write("<h1>Foo</h1>");
document.write(<h1>Foo</h1>)
前三行工作正常,但最后一行不显示任何内容。我相信这是一个语法错误,但是无论我尝试什么,它似乎仍然无法正常工作。我尝试将HTML标记仅放在引号中没有任何作用。我有什么办法可以将字符串变量表示为标头?换句话说,我希望页面将单词“ Foo Variable”显示为h1标头。
提前感谢。
是,这是语法错误。如果要在Foo
标记内输出h1
变量的内容,则需要使用模板文字(ES2015 +)或字符串串联:
// Template literal (ES2015+)
var Foo = "Foo Variable";
document.write(`<h1>${Foo}</h1>`);
或
// String concatenation
var Foo = "Foo Variable";
document.write("<h1>" + Foo + "</h1>");
但是,document.write
在现代网络编程中几乎没有位置。而是使用the DOM添加或更新元素。