jQuery MiniUI

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

datagrid动态列问题 [复制链接]

Rank: 2

跳转到指定楼层
楼主
发表于 2014-4-28 17:48:32 |只看该作者 |倒序浏览
代码如下:
  1. function loadgrid() {
  2.                         var msgActivityId = $("#msgActivityId").val();
  3.                         var grid = mini.get("activityObjectDatagrid");
  4.                         //获取列头
  5.                         var url = "${rc.contextPath}/activityParter/getTemplateParams.htm?msgActivityId=" + msgActivityId;
  6.                         $.ajax({
  7.                             url: url,
  8.                             type: "get",
  9.                             success: function (text) {
  10.                                     if(null != text && "" != text){
  11.                                             alert(text);
  12.                                             var ss='{header:"手机号码",width:120,headerAlign:"center",align:"center",allowSort:false,field:"sjhm"},{header:"用户代码",width:120,headerAlign:"center",align:"center",allowSort:false,field:"yhdm"},{header:"用户名称",width:120,headerAlign:"center",align:"center",allowSort:false,field:"yhmc"},{header:"用户类型",width:120,headerAlign:"center",align:"center",allowSort:false,field:"yhlx"},{header:"联系人",width:120,headerAlign:"center",align:"center",allowSort:false,field:"lxr"}';
  13.                                            
  14.                                              grid.set({
  15.                                                     columns: [
  16.                                                                          ss
  17.                                                     ]
  18.                                                 });
  19.                                             grid.load();
  20.                                             //获取表数据
  21.                                                 //var url = "${rc.contextPath}/activityParter/list.htm?msgActivityId=" + msgActivityId + "&queryType=1";
  22.                                                 //grid.setUrl(url);
  23.                                                 //grid.load();
  24.                                     }
  25.                             }
  26.                         });
  27.                        
  28.                 }
复制代码


Rank: 8Rank: 8

沙发
发表于 2014-4-28 17:54:26 |只看该作者
本帖最后由 lost 于 2014-4-28 17:57 编辑

1.数组里面放的是列的配置对象,你放成了字符串当然不对。
2.http://www.miniui.com/demo/#src=datagrid/setcolumns.html
动态加载列参考这个示例。

Rank: 2

板凳
发表于 2014-4-28 18:06:39 |只看该作者
本帖最后由 fanbing1121 于 2014-4-29 08:55 编辑
lost 发表于 2014-4-28 17:54
1.数组里面放的是列的配置对象,你放成了字符串当然不对。
2.http://www.miniui.com/demo/#src=datagrid/se ...
本意是动态列是从后台返回的,试了几种方式 ,最后这种是可行的。1、返回的是grid.set(Object),利用mini.decode将字符串反序列化为对象。
2、var ss=mini.decode('{columns:[{header:"手机号码",width:120,headerAlign:"center",align:"center",allowSort:false,field:"sjhm"},{header:"用户代码",width:120,headerAlign:"center",align:"center",allowSort:false,field:"yhdm"},{header:"用户名称",width:120,headerAlign:"center",align:"center",allowSort:false,field:"yhmc"},{header:"用户类型",width:120,headerAlign:"center",align:"center",allowSort:false,field:"yhlx"},{header:"联系人",width:120,headerAlign:"center",align:"center",allowSort:false,field:"lxr"}]}');
    grid.set(ss);

Rank: 8Rank: 8

地板
发表于 2014-4-28 18:08:34 |只看该作者
fanbing1121 发表于 2014-4-28 18:06
var ss=mini.decode('{columns:[{header:"手机号码",width:120,headerAlign:"center",align:"center",all ...

脱离ajax.先单独远行字段代码看看是否可以?

Archiver|普加软件

GMT+8, 2025-7-19 03:06 , Processed in 1.063229 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部