【发布时间】:2013-12-31 00:08:43
【问题描述】:
下面我给出了我的代码,它是一个调用 php 文件并获取 json 数据的 javascript 函数....一切都还算完美,但是当我想将数据添加到多维数组时出现问题..抱歉对于这个菜鸟问题..我不知道它是否可以完成。
我想做什么
- 我想在 ajax 调用中检索数据并将这些数据保存到数组中
- 所以如果我再次需要数据,我不需要再次调用
- 所以我想将数据存储在具有两个键的多维数组中
- 第一个键将是长度 iof 数组
- 第二个是我的数据的dataType,可以是“name”、“id”、“description”
- 这是正确的做法吗
- 如果不是那么我应该尝试什么...?帮帮我...!!!
- 或者我可以将 ajax 调用成功获得的完整 jsondata 对象数据分配给数组
我的问题新增要求 它的关联数组就像我的 php 数据数组一样
$data[0]["id"] = 1;
$data[0]["name"] = "spomething";
$data[0]["descriptoon"] = "spomething";
$data[0]["image"] = "spomething";
//for second item
$data[1]["id"] = 1;
$data[1]["name"] = "spomething";
$data[1]["descriptoon"] = "spomething";
$data[1]["image"] = "spomething";
所以我想为 javascript 创建相同的数组...对于我从 ajax../ 获取的每个项目...并包含到 javascript 数组中...
$('.searchButton').bind("mouseover", function() {
var data = $(this).parents('.item').attr('id');
var type = $(this).parents('.tab-pane').attr('id');
// dataArray will be global javascript variable because of its needdss... it will be outside the function
var dataArray = new Array();
$.ajax({
type: 'GET',
url: '<?php echo $this->createUrl("dining/AjaxItemDetailsCall") ?>/data/'+data,
dataType: 'json',
async: false,
success: function(data){
var dataArrayLength = dataArray.length;
dataArray.push({dataArrayLength:data});
console.log(dataArray[0]);
}
});
});
现在我根据你的建议更改我的代码我可以通过 push fn 将数据对象推送到数组中......现在我如何从该对象调用内部数据......!
Object {dataArrayLength: Object}
dataArrayLength: Object
description: "World famous roasted Chicken, avacado, fresh mushrooms, red onions. Mozzarella cheese and our secret sauce."
id: "11"
images: "/htdocs/kiosk/images/dining/items/pizzas/11.jpg"
name: "Bella Notte Signature Pizza"
price: "4.50"
raters: "10"
ratings: "1"
__proto__: Object
__proto__: Object
这是 console.log(dataArray[0]) 的输出 ...所以现在我想从中获取 "id" 、 "name" 、 "description" 我该怎么做这……??????/
我的问题解决方案
success:function(data){
var dataArrayLength = dataArray.length;
dataArray.push(data);
dataArray.forEach(function(object,index){
console.log(object.id);
console.log(object.name);
console.log(object.description);
console.log(object.image);
console.log(object.ratings);
});
这就是我想做的……
【问题讨论】:
标签: javascript arrays object multidimensional-array associative-array