我的javascript数组有问题。我的代码:
$namen = array();
$mainimg = array();
$sql1 = mysql_query("SELECT * FROM image WHERE id = ".$id.";");
echo "<div class='normal'>";
while($row = mysql_fetch_array($sql1))
{
$namen[] = $row['bild'];
$mainimg[] = $row['mainimg'];
$number_array = count($namen);
?>
<script type='text/javascript'>
<?php
for($a=1; $a <= count($namen); $a++){
$php_array = array($a => $row['bild']);
$js_array = json_encode($php_array);
echo "var javascript_array = ". $js_array . ";\n";
echo "document.write(javascript_array + '<br />');";
}
?>
</script>
}
现在我在浏览器中获得[object] [Object],但我想打印出元素,图片的名称。我该怎么办?
提前感谢您的帮助。
问候,Yanick
答案 0 :(得分:1)
您正在尝试将Object
打印为string
。您需要做的是直接从对象访问您的属性。
<script>
<?php $data = array('foo' => 'bar'); ?>
var my_js_var = <?php echo json_encode($data); ?>;
</script>
使用此脚本,您可以访问以下值:
document.write(my_js_var.foo); // writes 'bar'
答案 1 :(得分:0)
您需要遍历数组并输出每个项目所需的字段。您当前正在使用JavaScript打印出对象的字符串版本,该版本始终为[object Object]
。