关于前端:EasyUI-datagrid的contenttype如何配置

Spring MVC在接管汇合申请参数时,须要在Controller办法的汇合参数里前增加@RequestBody,而@RequestBody默认接管的enctype (MIME编码)是application/json,因而发送POST申请时须要设置申请报文头信息,否则Spring MVC在解析汇合申请参数时不会主动的转换成JSON数据再解析成相应的汇合。
在应用easyUi的datagrid申请数据,其中默认的形式是:
application/x-www-form-urlencoded; charset=UTF-8

然而后端要求用 application/json。datagrid并没有配置content-type的属性。

解决形式

通过一上午钻研,可用如下形式,重写datagrid类中的loader办法批改其配置。

$("#grid").datagrid({
    queryParams:params,
    ...//其余参数配置
    loader : function(param, success, error) {
        $.ajax({
            type : 'post', //申请形式
            url : 'xxxxxx', //申请地址
            dataType : 'json',
            contentType : 'application/json;charset=utf-8', // 设置申请头信息
            data : JSON.stringify(param),
            success : function(result) {       
                success(result);                
            }
        });
    }
 
});

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理