$ getJSON不被识别为数组
问题描述:
我试图用jQuery的$ getJSON发送一个'ids'数组。这里是我的jQuery的是什么样子:
var calendarIds = [];
$("#jammer :selected").each(function(i, selected){
calendarIds[i] = $(selected).val();
});
$.getJSON("test.php", {
start: start.getTime()/1000,
end: end.getTime()/1000,
calendarid: calendarIds
},
function(a) {
callback(a);
});
而且,当我用Firebug的检查,它表明正在传递多个值:例如,
http://mydomain.com/test.php?calendarid=3&calendarid=4
然而,当我试图加入这个所谓使用称为数组:
$comma_separated = join(",", $_GET['calendarid']);
echo $comma_separated;
我越来越:
Warning: join() [function.join]: Invalid arguments passed
而且,如果我只是回声$ _GET [“calendarid”],我得到,只是它的回声最后一个ID通过,例如:
echo $_GET['calendarid']; //echos "4"
什么我做错了任何想法?谢谢!
答
的URL应该是
http://mydomain.com/test.php?calendarid[]=3&calendarid[]=4
为了让PHP解析$ _GET [ 'calendarid']作为一个PHP数组。
将其设置为正确的URL后,您将能够正确使用PHP中的join()。
感谢您的答复:那么,使用$ .getJSON与jQuery,我怎么能告诉它发送一个文件?我试着这样做: $ .getJSON( “test.php的”,{ 开始:start.getTime()/ 1000, 结束:end.getTime()/ 1000, calendarid []:calendarIds \t \t \t \t \t \t}, 然而,calendarid后具有括号([])导致JavaScript错误上任何想法 – Dodinas 2009-09-13 16:09:21