【发布时间】:2017-05-16 20:49:18
【问题描述】:
我正在创建一个网站,用户可以在其中移动一些滑块以动态获得不同的结果。现在,在本地开发时,我正在监视每个滑块的“更新”状态,并使用 AJAX 从数据库中获取数据。我 100% 确定当网站上线时它不会是理想的,所以我想知道如何改进它,因此我的问题是:我可以在页面加载时进行一次 AJAX 调用以获取多个数据数组,然后映射结果数组作为javascript变量以某种方式?即使它不是异步的,因为它只会执行一次。
而PHP产生的数据如下:
Array
(
[lamps] => Array
(
[0] => Array
(
[lamp_id] => 1
[wattage] => 50
[lumens] => 6750
[price] => 1132.00
)
[1] => Array
(
[lamp_id] => 2
[wattage] => 100
[lumens] => 13500
[price] => 2905.00
)
[2] => Array
(
[lamp_id] => 3
[wattage] => 150
[lumens] => 13575
[price] => 4608.00
)
[3] => Array
(
[lamp_id] => 4
[wattage] => 200
[lumens] => 18100
[price] => 5360.00
)
)
[panels] => Array
(
[0] => Array
(
[panel_id] => 1
[watts] => 260
[voltage] => 31.35
[price] => 4653.00
)
)
)
我知道如何处理来自 AJAX 的单个返回,但真的不知道如何处理数组,更不用说其中两个了……但我猜我可以以某种方式映射它们,这样我就可以按每个 [arrayname][arraykey] 调用 vars?
提前致谢!
【问题讨论】:
-
json_encode($theWholePHPDataStructure)创建一个 JSON 字符串。回显到 AJAX 调用,它将自动成为一个 javascript 对象 -
您调用了
console.log(x)来生成该输出。这意味着x已经是一个 JS 对象。灯具阵列为x.lamps,面板阵列为x.panel。仅此而已。 -
@T.J.Crowder 但我猜我可以以某种方式映射它们,这样我就可以通过每个 [arrayname][arraykey] 调用变量?
-
我确信它是相关的。我会重新打开,因为你在抱怨,但我仍然确定这是解析 JSON 的问题
-
当我说解析时,我的意思是解析和迭代 - 解析而不迭代 - 我发布的欺骗中的示例并不有趣
标签: javascript php jquery arrays ajax