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中包含 totalrows,我们需要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>


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM