EasyUI combobox 加载JSON数据《一》

Action返回 JSON 格式如下:

jsonResult = 
{
  total=7,rows=[
     {TEXT=技术支持, ID=402894ca4419acf1014419b148a10000}, 
     {TEXT=开发部, ID=402894ca4419acf1014419beb1bc0001}, 
     {TEXT=实施, ID=4028e439476b55be01477bbf0fab0000}, 
     {TEXT=技术支持, ID=4028e439476b55be01477bbfb80e0001},
     {TEXT=客户服务, ID=4028e439476b55be01477bc015a80002}]
}

json中包含 total 和 rows,我们需要rows下面的内容来显示在combobox中,API规定必须用下面格式的json:

[{  
    "id":1,  
    "text":"text1"  
},{  
    "id":2,  
    "text":"text2"  
},{  
    "id":3,  
    "text":"text3",  
    "selected":true  
},{  
    "id":4,  
    "text":"text4"  
},{  
    "id":5,  
    "text":"text5"  
}]

官方给出了一个示例

$('#cc').combobox({  
    url:'combobox_data.json',  
    valueField:'id',  
    textField:'text'  
}); 

一直不明白只需一个url 如何返回数据?百思不得姐
以下是两种解决方法
第一种:

var url = "admin/FrmQueryAllGroup.do";
$.getJSON(url,function(json) {
    $('#cc').combobox({
        data: json.jsonResult.rows,
        valueField: 'ID',
        textField: 'TEXT'
    });
});

第二种:

$.ajax({
    type: "POST",
    url: 'admin/FrmQueryAllGroup.do',
    dataType: "json",
    success: function(json) {
        $('#cc').combobox({
            data: json.jsonResult.rows,
            valueField: 'ID',
            textField: 'TEXT'
        });
    }
});

注:jsonResult 为Action中返回值,rows 为 jsonResult 中的属性

struts.xml

<package name="FrmTaskUser_Ajax_code" extends="json-default">
    <action name="FrmQueryAllGroup" method="queryAllGroup"
        class="org.bkgd.autoform.web.action.ActionTaskuserFormQuery">
        <result type="json"></result>
    </action>
</package>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值