php - 如何在Javascript中动态设置数组?

标签 php javascript mysql html

我正在开发一个电子商务网站。 javascript中有一个数组“products”,由以下代码定义

<script type="text/javascript">
    var products = 
    [
         {"id":"1","title":"Apple iPhone 4"},
         {"id":"2","title":"BlackBerry 9780 Bold"}
    ];
    /*some other javascript code*/
</script>

我希望这个数组根据查询数据库返回的行数动态更新。 例如,假设我查询数据库并返回 5 行。我希望用这 5 行更新该数组。请帮我完成这件事。我在 Windows 机器上使用 PHP、MySQL、Apache。

最佳答案

您需要push功能:http://www.w3schools.com/jsref/jsref_push.asp

var products = 
[
     {"id":"1","title":"Apple iPhone 4"},
     {"id":"2","title":"BlackBerry 9780 Bold"}
];

// Let's add a new phone:
products.push({"id":"3","title":"HTC Evo"});

/*
    products now equals: 
    [
         {"id":"1","title":"Apple iPhone 4"},
         {"id":"2","title":"BlackBerry 9780 Bold"},
         {"id":"3","title":"HTC Evo"}
    ];
*/

考虑到您可能有一个现有数组并且您想通过 ajax 更新它,您可以使用 PHP 动态执行此操作:

<script type="text/javascript">
<?php foreach($phones as $phone): ?>
    products.push({"id":"<?=$phone['id']?>","title":"<?=$phone['name']?>"});
<?php endforeach; ?>
</script>

关于php - 如何在Javascript中动态设置数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6752069/

相关文章:

php - PHP 中的 MySql 表格式化

php - MySQL PHP : how to efficiently fetch previous X dates that include entries

javascript - 如何将工具栏中的按钮设置为禁用

javascript - 显示父 UL 并为根父节点显示 UL 和 LI 节点

javascript - 在 JavaScript 中获取对象名称

php - 如何将 Num1 与 Num2 与 num1-num2 格式组合?

mysql - SQL,合并同一个表的两个聚合

php - 改进我的 Zend 存储过程调用代码

javascript - 通过jquery中的数组进行多文件上传验证

C# 数组作为 MySQL Select 语句的一部分?