【问题标题】:How can I print the whole content of this out on a page using Javascript?如何使用 Javascript 在页面上打印此内容的全部内容?
【发布时间】:2013-02-05 17:04:02
【问题描述】:

我真的找不到在页面上打印数组内容的方法。任何人都可以帮忙吗? 我已经从数据库中获取数据并将其循环到一个 javascript 数组中,现在只想在页面上显示它。

代码如下:

<html>

<head>

<script>


var items = {


<?php

   $con = mysql_connect("***","****","*****");
   if (!$con)
   {
    die('Could not connect: ' . mysql_error());
    }

    mysql_select_db("learning_game", $con);

  $result = mysql_query("SELECT * FROM data");


  $first=true;
  while($row = mysql_fetch_array($result))
{
if (!$first){
echo ",";
}
  $first = false;
echo "{name='" . $row['word'] . "',image='" . $row['image'] ."'}";

 }


 mysql_close($con);


   ?>



   };

   </script>

   </head>

<body>




</body>

   </html>

【问题讨论】:

  • 一个 for 循环应该可以解决问题
  • 感谢所有快速回复。谁能帮我提供示例代码,以便我可以弄清楚如何在页面上打印它?我对javascript一无所知,所以任何帮助都会很棒。谢谢

标签: javascript arrays loops printing


【解决方案1】:
<html>
  <head>
  </head>
  <body>
    <div></div>
    <script>
      var items = [
      <?php
      $con = mysql_connect("***","****","*****");
      if (!$con) {
        die('Could not connect: ' . mysql_error());
      }
      mysql_select_db("learning_game", $con);
      $result = mysql_query("SELECT * FROM data");
      $first = true;
      while ($row = mysql_fetch_array($result)) {
        if (!$first) {
          echo ",";
        }
        $first = false;
        echo "{name:'" . $row['word'] . "',image:'" . $row['image'] ."'}";
      }
      mysql_close($con);
      ?>
      ];
      for (var i = 0; i < items.length; i += 1) {
        document.getElementsByTagName('div')[0].innerHTML += items[i].name + ":" + items[i].image + "<br />\n";
      }
    </script>
  </body>
</html>

请注意,items 声明现在带有 [ ] 符号,因此它变成了一个数组,而不是一个对象。

在您回显名称和图像的行中,等号变为冒号 (:)。

除了完整的脚本必须移到底部,因为您只能写入已经渲染(关闭)的元素。所以我添加了一个新的div 并写入其中。

【讨论】:

    猜你喜欢
    • 2019-01-26
    • 1970-01-01
    • 1970-01-01
    • 2020-06-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-05
    相关资源
    最近更新 更多