我有一个类似下面的数组
var a = [
{
"start":"2015-01-12T00:00:00.000Z",
"allDay":false,
"promotion_option":"banner"
},
{
"start":"2015-01-13T00:00:00.000Z",
"allDay":false,
"promotion_option":"banner"
}
];
我使用JQuery Ajax
发布了以下数组对象$.ajax({
type: method,
url: url,
data: a,
success: function(res) {
var message = res.mesg;
if (message) {
$('.flash').html(message).fadeIn(300).delay(250).fadeOut(300);
};
}
});
当我尝试dd(Input::all())
时,在我的控制器中,它只是返回
array(1) {
["undefined"]=>
string(0) ""
}
那么,我如何才能获得我发布的内容的价值?
答案 0 :(得分:2)
您需要将数据作为对象传递并使用dataType:'json'
,因为您在成功回调时使用res.mesg
,
$.ajax({
type: method,
url: url,
data: {a:a},//<== use object here
dataType:'json',// add this, as you are using res.mesg
success: function(res) {
var message = res.mesg;
if (message) {
$('.flash').html(message).fadeIn(300).delay(250).fadeOut(300);
};
}
});
答案 1 :(得分:1)
尝试JSON.stringify(a)
,将其转换为类似
"[{"start":"2015-01-12T00:00:00.000Z","allDay":false,"promotion_option":"banner"},{"start":"2015-01-13T00:00:00.000Z","allDay":false,"promotion_option":"banner"}]"
请注意,只要您收到httprequest,它就会将其转换为后端的字符串,您只需记住这一点。希望它有所帮助