多维json编码关联数组php到JS
multidimensional json encoded associative array php to JS
嗨,最初我的数组是这样的
PHP$results = array(
"banana" => $bananavalue,
"apple" => $applevalue,
);
echo json_encode($results);
JS
var fruits = [];
$.ajax({
type: "POST",
url: "actions/MYphp.php",
data: PassArray,
dataType: 'json',
beforeSend: function (html) {
// alert(html);
},
success: function (html) {
var obj = html;
// Now the two will work
$.each(obj, function (key, value) {
fruits.push([key, value]);
});
然而,我想把它改成一个多维的水果和蔬菜按如下:
results = array(
"fruit"=>array(
"banana" => $bananavalue,
"apple" => $applevalue
),
"vegetables"=>array(
"lettuce" => $lettuce,
"cabbage" => $cabbage
)
);
echo json_encode($results);
问题是我如何在Javascript中循环每个数组并将其分配给两个数组。(水果和蔬菜)
我试过了
$.each(obj['fruit'], function(key, value) {
fruits.push([key, value]);
});
与PHP不同,javascript没有关联数组。
json编码的PHP关联数组解码为javascript纯对象。
访问javascript中的数据:
$.ajax({
type: "POST",
url: "actions/MYphp.php",
data: PassArray,
dataType: 'json',
success: function(obj) {
//do whatever is required with obj.fruits and obj.vegetables here
};
});
一般来说,您不会希望将obj
或obj.fruits
或obj.vegetables
分配给外部作用域中的成员,因为它们在ajax响应到达之前是不可用的。您通常会在success
范围内(以及从中调用的函数)对obj.fruits
和obj.vegetables
执行所有必要的操作。
的方法与PHP类似,嵌套2个循环。
$.each(obj, function(keyOfOuterArray, innerArray) {
// keyOfOuterArray equals to vegetables, fruit
console.log(keyOfOuterArray);
$.each(innerArray, function(keyOfInnerArray, valueOfInnerArray) {
//valueOfInnerArrayis your inner array value
console.log(keyOfInnerArray, valueOfInnerArray);
});
});
回答你的问题:
var myNewObj = {};
$.each(obj, function(keyOfOuterArray, innerArray) {
$.each(innerArray, function(keyOfInnerArray, valueOfInnerArray) {
myNewObj[keyOfOuterArray][keyOfInnerArray] = valueOfInnerArray;
});
});
相关文章:
- 在SVG地图上添加水的渐变,就像在谷歌地图(PHP/JS)中一样
- PHP/JS-EchoJs函数PHP curl发布后的通知
- FullCalendar backend PHP/JS to symfony 3
- 什么'是一个用于PHP+JS(extJS)开发的IDE,支持ctrl+click
- PHP/JS 文本差异
- 一个页面上有两个引导 php-js 表单
- Piwik:如何跨域(PHP/JS)跟踪访问者(用户ID)
- 使用php-js-msyql的实时更新消息系统
- 使用PHP/JS自动刷新Highcharts
- 如何为PHP/JS游戏制作倒计时/定时器
- node.js可以选择性地引入到用普通PHP/js/CSS/HTML构建的web应用程序中吗
- 用PHP/JS开发依赖表单字段的最佳方法
- 无法从数字中删除空白(PHP/JS)
- PHP/JS:动态Dropboxes和回显SELECTED值
- 更改数据库值AJAX PHP JS
- '套接字连接错误'在Aptana 3上调试PHP/JS时
- PHP/JS:用JS函数发布输入值,并通过PHP进行回显
- 在“onexit”或“onsubmit”之后,查询mysql并填充表单字段,而无需离开页面php js
- "Share-to-Facebook" html / php / js
- 从 PHP-JS 返回数组的计算的读取值