如何在 JavaScript 中从字符串创建元素?

front end technologyjavascriptweb development

在本教程中,我们将了解在 JavaScript 中从字符串创建元素的各种方法。如果我们必须动态生成元素以使网站具有交互性,那么从字符串创建元素会非常有用。例如,在待办事项列表应用中,我们可以添加、删除和编辑待办事项。

createElement() 方法

我们使用 createElement() 方法创建 JavaScript 项。要创建特定元素,我们将项名称作为字符串传递给 createElement() 方法。

createElement(tagName) 函数有一个参数,作为使用此方法创建的标签的名称。这里的 tagName 是参数名称,它将以字符串的形式出现。请注意,一个字符串只能创建一个元素。

语法

document.createElement("tagName")

tagName 的位置,我们传递标签名称,如 p(段落)、h1(标题 1)、img(图像)。createElement 将使 tagName 小写,因此您不必担心大小写。

步骤

  • 步骤 1 - 使用元素值(如 h3 和 p 等)创建字符串

  • 步骤 2 - 将字符串作为参数传递给 createElement() 方法。将值分配给变量。这将创建我们所需的元素。

  • 步骤 3 - 创建元素后,我们使用 innerText 属性将所需的文本分配给两个元素。

  • 步骤 4 - 最终,我们使用 append() 或 appendChild() 方法将创建的元素附加到网页,以便用户可以看到它。

让我们从字符串创建一个标题和一个段落。

let string1="h3"
let string2="p"
let element1=document.createElement(string1)
let element2=document.createElement(string2)

因此,您必须了解我们如何创建元素,但创建元素不会帮助向用户显示元素,因为它不是 DOM 的一部分,而是我们必须使其成为 DOM 的一部分DOM,将它们附加到网页。

因此,我们使用一些方法,如 append()appendChild()。

示例

使用 append() 方法附加创建的元素。

在下面的示例中,我们使用 document createElement() 方法创建了两个元素 h3 和 p。然后为这些元素分配一些文本,并使用 append() 方法将元素附加到 DOM。最后,使用 innerHTML 属性显示元素。

<html> <head> <title>Creating elements from string in JavaScriptnhi</title> </head> <body> <script> let string1="h3" let string2="p" let element1=document.createElement(string1) let element2=document.createElement(string2) element1.innerText="An h3 element using string" element2.innerText="A paragraph element using string" document.body.append(element1) document.body.append(element2) </script> </body> </html>

示例

使用 appendChild() 方法附加创建的元素。

在下面的示例中,我们使用文档 createElement() 方法创建了两个元素 h3 和 p。然后为这些元素分配一些文本,并使用 appendChild() 方法将元素附加到 DOM。最后,使用 innerHTML 属性显示元素

<html> <head> <title>Creating elements from string in JavaScript </title> </head> <body> <script> let string1="h3" let string2="p" let element1=document.createElement(string1) let element2=document.createElement(string2) element1.innerText="An h3 element using string" element2.innerText="A paragraph element using string" document.body.appendChild(element1) document.body.appendChild(element2) </script> </body> </html>

现在你可能会想,上面的程序的输出是一样的,那么这两个程序有什么不同呢?

嗯,是的,两者都用于将节点附加到 HTML 文档,但在 case append() 方法中,它返回附加的节点,而 appendChildI() 方法不返回任何内容。

使用 append() 方法,我们可以一次附加多个元素,但在 case appendChild() 方法中,我们一次只能附加一个元素。

类似

document.body.append(element1, element2)

这将完成与其相同的工作

document.body.append(element1)
document.body.append(element2)

使用 append() 方法DOMString 和 DOMNodes 都可以附加到父元素,但在 appendChild() 方法中,只有 DOMNodes 可以附加到父元素。

因此,这些是我们可以用来从字符串创建元素的一些方法。


相关文章