如何使用JavaScript在正文中创建和附加文本?

时间:2017-02-10 11:16:51

标签: javascript

我有以下代码,它不起作用,我尝试在正文中创建并附加一些文本。我不知道我错过了什么。



<!DOCTYPE html>
<html>

<head>
  <meta charset="utf-8">
  <title>Number guessing game</title>
</head>

<body>

</body>
<script type="text/javascript">
  var par = document.createElement("p");
  var text = document.createTextNode("fhsgdjrs hgrtsfya");
  par.appendChild(text);
</script>

</html>
&#13;
&#13;
&#13;

3 个答案:

答案 0 :(得分:3)

您需要将变量par(具有您使用JavaScript创建的元素<p>)附加到正文(标记为<body>的HTML /代码document.body中JavaScript),如下面的代码段:

var par = document.createElement("p");
var text = document.createTextNode("fhsgdjrs hgrtsfya");
par.appendChild(text);
document.body.appendChild(par);
<head>
  <meta charset="utf-8">
  <title>Number guessing game</title>
</head>

您可以在this page中找到类似的示例(<button>}。

这是您的代码,其中添加了代码行(document.body.appendChild(par);)以使其正常工作:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Number guessing game</title>
</head>
<body>
<script type="text/javascript">

var par = document.createElement("p");
var text = document.createTextNode("fhsgdjrs hgrtsfya");
par.appendChild(text);
document.body.appendChild(par);
</script>
</body>
</html>

如果您希望输出为My first Program而不是fhsgdjrs hgrtsfya,则必须更改创建文本节点的代码行:

var text = document.createTextNode("fhsgdjrs hgrtsfya");

更改方法createTextNode内的字符串将更改输出:

var text = document.createTextNode("My first Program");

语法为:

document.createTextNode( text )

参数文本(类型string)是必需的,因为它是文本节点的文本。

答案 1 :(得分:3)

将创建的元素<p>附加到代码<body>中,如下面的代码所示:

&#13;
&#13;
<html>

<head>
  <meta charset="utf-8">
  <title>Number guessing game</title>
</head>

<body>
  <script>
    var par = document.createElement("p"); //creating the paragraph element 
    var text = document.createTextNode("Text Added to the body"); //creating the text node
    document.body.appendChild(par.appendChild(text)); //appending the text to paragraph and appending the paragraph to the body.
  </script>
</body>

</html>
&#13;
&#13;
&#13;

举例来说here

答案 2 :(得分:0)

我在下面重写了你的代码: -

&#13;
&#13;
<!DOCTYPE html>
<html>

<head>
  <meta charset="utf-8">
  <title>Number guessing game</title>
</head>

<body>

</body>
<script type="text/javascript">
  var par = document.createElement("p");
  var text = document.createTextNode("fhsgdjrs hgrtsfya");
  par.appendChild(text);
  document.getElementsByTagName('body')[0].appendChild(par);
</script>

</html>
&#13;
&#13;
&#13;

这对你有用