JavaScript - document.write无效

时间:2016-08-25 20:45:09

标签: javascript

我正在尝试打印一个有问题ID的h3,但它不起作用。

function questions() {
  var question = document.getElementById("question");
  document.write(question);
}

questions();
body {
  font-family: Arial;
}

.header {
  padding-top: 50px;
  text-align: center;
}
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <link rel="stylesheet" href="styles.css">
</head>

<body>
  <div class="header">
    <h1>Edu Game 1</h1>
    <h3>What is<h3 id="question">1+1?</h3></h3>
    <input type = "text" id="ansBox" />
  </div>

  <script src="scripts.js"></script>
</body>
</html>

正如您所看到的,结果很好,直到它到达JavaScript。我怎样才能解决这个问题?我知道document.write不是用来打印东西的最好的东西,但我只是测试一些东西。

4 个答案:

答案 0 :(得分:1)

document.getElementById("question")返回一个DOM对象(如您所见)并且您想要访问其中的HTML,因此请使用innerHTML属性通过document.getElementById("question").innerHTML获取它。从技术上讲,document.write并没有错;它正在做它的工作。你只是没有选择元素的内容。

function questions() {
  var question = document.getElementById("question").innerHTML;
  document.write(question);
}

questions();
body {
  font-family: Arial;
}

.header {
  padding-top: 50px;
  text-align: center;
}
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <link rel="stylesheet" href="styles.css">
</head>

<body>
  <div class="header">
    <h1>Edu Game 1</h1>
    <h3>What is<h3 id="question">1+1?</h3></h3>
    <input type = "text" id="ansBox" />
  </div>

  <script src="scripts.js"></script>
</body>
</html>

答案 1 :(得分:0)

问题是HTMLHeadingElement类型的对象。您正在编写该对象的字符串表示形式,即[object HTMLHeadingElement]。

您要么对用于生成该元素的原始HTML(question.outerHTML)或其内容(question.innerHTML)感兴趣。

答案 2 :(得分:0)

尝试将脚本放在此处等待加载dom内容:

.

WHERE设为='database' AND

='Job Hunt'

另外,不要嵌套标签,而是使用跨度:

GROUP_CONCAT

答案 3 :(得分:0)

您正在尝试将HTMLheading对象写入页面。 使用.outerHTML属性可以实现此目的。

&#13;
&#13;
function questions() {
  var question = document.getElementById("question").outerHTML;
  document.write(question);
}

questions();
&#13;
body {
  font-family: Arial;
}

.header {
  padding-top: 50px;
  text-align: center;
}
&#13;
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <link rel="stylesheet" href="styles.css">
</head>

<body>
  <div class="header">
    <h1>Edu Game 1</h1>
    <h3>What is<h3 id="question">1+1?</h3></h3>
    <input type = "text" id="ansBox" />
  </div>

  <script src="scripts.js"></script>
</body>
</html>
&#13;
&#13;
&#13;