2013-02-05 57 views
-2

我真的找不到在页面上打印数组内容的方法。谁能帮忙? 我已将数据从数据库中取出并将其放入一个javascript数组中,现在只想将其显示在页面上。如何在使用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> 
+0

一个'for'循环应该诀窍 – starbeamrainbowlabs

+0

感谢所有的快速回复。任何人都可以使用示例代码来帮助我,因此我可以制定如何在页面上打印它?我对JavaScript一无所知,所以任何帮助都会很棒。谢谢 – user2043964

回答

0
<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混合,并写入。

相关问题