如何在HTML标题中包含JavaScript变量?

如何在HTML标题中包含JavaScript变量?,javascript,html,Javascript,Html,我是HTML和JavaScript的初学者,不知道如何在HTML头中包含JavaScript变量。 问题是如何在HTML的标题中定义变量并在正文中使用它们。 比如说, for (var i in array) { var num = i; var customForm = '<form> \ <h2>***INCLUDE NUM VARIABLE HERE***</h2> \

我是HTML和JavaScript的初学者,不知道如何在HTML头中包含JavaScript变量。 问题是如何在HTML的标题中定义变量并在正文中使用它们。 比如说,

for (var i in array)
{
  var num = i;
  var customForm = '<form> \
                    <h2>***INCLUDE NUM VARIABLE HERE***</h2> \
                    </form>';
}

您可以遵循以下示例: var示例=JS中的标题; 功能更改内容 { document.getElementByIdcontent.innerHTML=示例; } 单击以两种方式更改内容:

var customForm = '<form> \
                    <h2>' + num + '</h2> \
                  </form>';

第一个只是将变量连接到字符串中,第二个是来自ES6的模板文本模板字符串,您必须使用这些“反引号”。

如果您的h1看起来像这样:

<h1 id='myHeader'></h1>
document.getElementById("myHeader").textContent = myVariable

此行使用h1的id选择它并更新其文本内容

对于任何javascript初学者,我认为一个比公认的回答更详细的回答都是有益的。这个问题本质上是问如何将动态的、javascript生成的内容插入html,这是一个非常常见的用例。最常见的方法是串联和模板文本

串联:

此解决方案使用连接来构建最终字符串。级联对于初学者来说是一个非常重要的概念。我的示例还更改了用户提供的示例,以便使用正确的javascript语法编写for循环

模板文本:

对于一些用例,模板文本被认为比串联更好。在这种情况下,模板文本将更易于编码,并且更易于以后阅读/编辑。模板文本还可用于将原始javascript代码的结果(不仅仅是变量)插入字符串,因此

var customForm=`<form><h2>${document.getElementById("myDiv")}</h2></form>`
只要html有一个id等于myDiv的元素,它就可以工作

var customForm=`<form><h2>${variable}</h2></form>`
这非常有用,因为您可以使用模板文本编写整个html页面,然后根据用户的操作填充值


请注意,使用模板文字需要打勾,而不是引号以及字符串的开头和结尾。

然后您将执行类似innerHTML的操作来更改页面的HTML。第二个可以使用。谢谢。我明白为什么第一个不能使用,而不是',它现在已被编辑。重新打开问题,澄清的问题已经解决
for (i = 0; i < array.length; i++) {
  var customForm = `<form> \
               <h2>${i}</h2> \
              </form>`
}
var customForm=`<form><h2>${document.getElementById("myDiv")}</h2></form>`
var customForm=`<form><h2>${variable}</h2></form>`