jQuery MiniUI

 找回密码
 立即注册
查看: 12534|回复: 11
打印 上一主题 下一主题

datagrid调用load执行ajax查询时如何设置contentType为json [复制链接]

Rank: 3Rank: 3

跳转到指定楼层
楼主
发表于 2017-10-10 17:21:13 |只看该作者 |倒序浏览

如何在datagrid使用load时将ajax的请求变成content-Type:application/json,数据以json格式数据传送到后台?试过用setAjaxOptions({contentType:'application/json'}),但这样设置过之后request header里就没有了content-Type这个,而且request method 变成了OPTIONS,导致无法正常查询
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

沙发
发表于 2017-10-10 18:17:34 |只看该作者
ajaxOptions={contentType:"application/json"}
本地测试可以修改
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 3Rank: 3

板凳
发表于 2017-10-11 16:00:39 |只看该作者
本帖最后由 鸡胸肉终结者 于 2017-10-11 16:03 编辑
dforce 发表于 2017-10-10 18:17
ajaxOptions={contentType:"application/json"}
本地测试可以修改

可是现在我的情况就是改了之后没有出现contenType,而且查询也变成了 404
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

地板
发表于 2017-10-11 16:11:12 |只看该作者
鸡胸肉终结者 发表于 2017-10-11 16:00
可是现在我的情况就是改了之后没有出现contenType,而且查询也变成了 404

http://www.miniui.com/demo/#src=datagrid/datagrid.html
这示例,我只加了ajaxOptions={contentType:"application/json"}
可以正常改动
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 3Rank: 3

5#
发表于 2017-10-12 10:18:01 |只看该作者
本帖最后由 鸡胸肉终结者 于 2017-10-12 10:26 编辑
felt 发表于 2017-10-11 16:11
http://www.miniui.com/demo/#src=datagrid/datagrid.html
这示例,我只加了ajaxOptions={contentType:"a ...

我这边加了就是我说的那种情况,请求头里没有出现contenType

Rank: 8Rank: 8

6#
发表于 2017-10-12 13:31:15 |只看该作者
鸡胸肉终结者 发表于 2017-10-12 10:18
我这边加了就是我说的那种情况,请求头里没有出现contenType

那就是你的问题了,你可以测试这个例子
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 2

7#
发表于 2018-1-8 12:00:07 |只看该作者
dforce 发表于 2017-10-12 13:31
那就是你的问题了,你可以测试这个例子

我直接ajax可以调
$.ajax({
    url:url,
    dataType : 'json',
    contentType : 'application/json',
    data : JSON.stringify(data),
    type:"post",
    success:function(e){
        if("100"==e.code){
            mini.get("datagrid").setData(e.data) ;
        }
    }
}) ;
然后用load方法不行,请问是怎么回事呢?
mini.get("datagrid").setUrl(url) ;
mini.get("datagrid").load(data) ;<div id="datagrid" class="mini-datagrid" style="height: 300px;width:100%"
     showPager="true"
     pageSize="20"
     autoLoad="false"
     borderStyle="border:0;"
     showEmptyText="true"      ajaxOptions={dataType:"json",contentType:"application/json",type:"post"}
     allowCellEdit="false" allowCellSelect="false"
     allowCellValid="false" allowSortColumn="false">

附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

8#
发表于 2018-1-8 15:47:15 |只看该作者
zcx032001 发表于 2018-1-8 12:00
我直接ajax可以调
$.ajax({
    url:url,

请检查setUrl之后,你这个地址返回的数据是什么,如果是grid上配置的url,那么返回的数据格式需要是{total:"",data:[{},{},{}]}

Rank: 2

9#
发表于 2018-1-8 16:39:37 |只看该作者
felt 发表于 2018-1-8 15:47
请检查setUrl之后,你这个地址返回的数据是什么,如果是grid上配置的url,那么返回的数据格式需要是{tot ...


结果是这样的,还是不行
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

10#
发表于 2018-1-9 09:34:33 |只看该作者
zcx032001 发表于 2018-1-8 16:39
结果是这样的,还是不行

检查一下data里面数据的每项是否和表格的列的field对应

Archiver|普加软件

GMT+8, 2025-7-16 07:15 , Processed in 1.064267 second(s), 10 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部