我有以下代码:
var formData = {};
formData['client_exists'] = 1;
formData['client_id'] = 1234;
formData['subdata'] = subdata;
这会构建一个对象,subdata是一个多维数组。
然后尝试使用以下内容将其传递给我的控制器:
let xhr = new XMLHttpRequest(), self = this;
window.location = window.location.origin+'/'+formAction+'/' + formData;
请注意,我不能使用以下格式,因为它会导致pdf生成的编码问题
$.ajax({
type : formMethod,
url : formAction,
data : formData,
cache : false,
success : function(data) {
}
});
当它到达我的控制器时,我只获得一个空数组,因为我的formData在url中传递:
[object%20Object]
我无法弄清楚如何通过正确传递,如果我使用JSON.stringify -
window.location = window.location.origin+'/'+formAction+'/?' + JSON.stringify(formData);
我得到了数据,但它不是可用的格式:
array:1 [▼
"{"client_exists":1,"client_id":123,"subdata":" => array:1 [▼
"{"something":"111","something_else":"222","something_more":"333"}" => ""
]
]
有没有更好的方法让我通过它或者我可以将它格式化为后端(PHP)上的正确多维数组?