jQuery MiniUI

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

DataGrid 动态加载列未显示?? [复制链接]

Rank: 4

跳转到指定楼层
楼主
发表于 2013-9-16 09:16:42 |只看该作者 |倒序浏览
function onSearch() {
            var form = new mini.Form("#form1");
            form.validate();
            if (form.isValid() == false) return;
            var data = form.getData();
            var json = mini.encode(data);
            $.ajax({
                url: "../SaleManager/SysModel.aspx?method=GetSaleColums",
                data: { data: json },
                cache: false,
                success: function (text) {
                    grid.set(text);
                }
            });
         
//            grid.set({
//                columns: [
//            { type: "indexcolumn" },
//            { field: "机构", width: 100, headerAlign: "center", header: "机构" },
//            { field: "纯净水18.9数量", width: 100, headerAlign: "center", header: "纯净水18.9数量" },
//            { field: "纯净水18.9金额", width: 100, headerAlign: "center", header: "纯净水18.9金额" },
//            { field: "数量合计", width: 100, headerAlign: "center", header: "数量合计" },
//            { field: "金额合计", width: 100, headerAlign: "center", header: "金额合计" }
//            ]});
            grid.setUrl("../Sytem/SysDate.aspx?method=GetSaleDay");
            grid.load({ data: json });

        }

以上代码注释掉的为GetSaleColums 获取的表头信息。但是在这种写法下没有显示获取到的结果集?
但是总记录数数是正确的。

Rank: 8Rank: 8

沙发
发表于 2013-9-16 09:19:05 |只看该作者

Rank: 4

板凳
发表于 2013-9-16 09:19:22 |只看该作者
如果在程序中直接使用grid.set()方法中注释的程序是可以正确的显示的。这是什么原因?

Rank: 4

地板
发表于 2013-9-16 09:27:35 |只看该作者
lost 发表于 2013-9-16 09:19
http://www.miniui.com/demo/#src=datagrid/setcolumns.html
参考这个示例demo做

我就是参照那个列子,但是我使用方法获取数据列后再使用grid.set()方法并没有显示出列记录,只是在底部显示了共多少条记录?

Rank: 8Rank: 8

5#
发表于 2013-9-16 10:23:01 |只看该作者
linda931 发表于 2013-9-16 09:27
我就是参照那个列子,但是我使用方法获取数据列后再使用grid.set()方法并没有显示出列记录,只是在底部显 ...

数据不能显示是你field的写错误了,field对应的是你数据库中的数据的名称(name),header自定义是列的名称。

Rank: 4

6#
发表于 2013-9-16 10:36:56 |只看该作者
lost 发表于 2013-9-16 09:19
http://www.miniui.com/demo/#src=datagrid/setcolumns.html
参考这个示例demo做

??  看看这样能解决吗???

Rank: 4

7#
发表于 2013-9-16 10:39:12 |只看该作者
lost 发表于 2013-9-16 09:19
http://www.miniui.com/demo/#src=datagrid/setcolumns.html
参考这个示例demo做

我使用方法获取的列是不确定的? 为什么不显示结果?

Rank: 4

8#
发表于 2013-9-16 10:55:08 |只看该作者
lost 发表于 2013-9-16 10:23
数据不能显示是你field的写错误了,field对应的是你数据库中的数据的名称(name),header自定义是列的名 ...

field 没有写错,我是在后台直接获取datatable的数据列名的。

Rank: 8Rank: 8

9#
发表于 2013-9-16 11:14:45 |只看该作者
linda931 发表于 2013-9-16 10:55
field 没有写错,我是在后台直接获取datatable的数据列名的。

如果是动态的列,那你得先grid.setColumns(columns)
给表格设定新的列,然后再通过url去加载数据

Rank: 4

10#
发表于 2013-9-16 11:19:50 |只看该作者
本帖最后由 linda931 于 2013-9-16 11:21 编辑
factory 发表于 2013-9-16 11:14
如果是动态的列,那你得先grid.setColumns(columns)
给表格设定新的列,然后再通过url去加载数据 ...

那grid.setColumns(columns)中的columns还是这种格式吗?
{  columns: [
            { type: "indexcolumn" },
            { field: "机构", width: 100, headerAlign: "center", header: "机构" },
            { field: "纯净水18.9数量", width: 100, headerAlign: "center", header: "纯净水18.9数量" },
            { field: "纯净水18.9金额", width: 100, headerAlign: "center", header: "纯净水18.9金额" },
            { field: "数量合计", width: 100, headerAlign: "center", header: "数量合计" },
            { field: "金额合计", width: 100, headerAlign: "center", header: "金额合计" }
            ]}

如果还是这种格式也没有显示出来

Archiver|普加软件

GMT+8, 2024-6-16 04:33 , Processed in 1.077795 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部