在用ajax提交表单数据时,我们常需要将form表单数据转为JSON格式,这样后端控制器可以方便的将JSON字符串转为Bean形式。
在此提供一小段代码1,让你快速的将form表单数据转为JSON格式。
function getFormData($form) {
var unindexed_array = $form.serializeArray();
var indexed_array = {};
$.map(unindexed_array,function (n,i) {
indexed_array[n['name']] = n['value'];
});
return indexed_array;
}
当你需要将form表单传递给Controller之后,则可以:
function submitForm() {
$.ajax({
type: 'post',url: '',contentType: 'application/json',dataType: 'json',data: JSON.stringify(getFormData($form)),success: function (result) {
//正确处理
},error: function () {
//错误处理
}
});
}
后端的Controller可以采用@RequestBody
来接收JSON字符串,并自动转为对应的Bean。