【发布时间】:2015-08-03 01:25:12
【问题描述】:
对 jQuery 非常陌生,不完全理解对象和数组之间的区别,所以如果我的术语不正确,我深表歉意 - 请纠正我!
我有一个成功的 PHP ajax 返回数组:
$.ajax({
url: "......",
dataType: "json",
type: "GET",
data: {
start_date: start,
end_date: end
},
success: function (res) {
$.each(res, function( key, value ){
$('#FoundEvents').append('<option value="'+ key +'">'+ value +'</option>');
});
}
});
这给了我每个选项标签中的 [object Object]。很明显,我正在处理一个对象而不是数组?所有数据都存在,我只是找不到正确的语法来访问它。如何从这一点迭代数组数据?
如果我正确理解我的控制台读数,则有 10 个“对象”,那么每个对象内部都有几个“键:值”。
感谢您的帮助!
更新
PHP 数组的结构如下: $arr = array(1 => array(key=>value), 2 => array(key=>value) ...)
我正在尝试访问值。
更新 2
这是我的新代码:
$.each(res, function(index, item){
$.each(item, function(key, value){
if(key == "event_title")
{
Events.push({"event_title":value});
}
});
});
$.each(Events, function(index, value){
$('#FoundEvents').append('<option value="'+ index +'">'+ Events.value +'</option>');
});
但不知何故,我的数组中仍有对象?我不明白为什么。我假设“价值”本身就是对象……我不介意,但需要知道如何提取数据。
【问题讨论】:
-
数据是什么样的?在 PHP 端执行
var_dump()并更新问题。
标签: php jquery arrays ajax object