jQuery MiniUI

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

JS生成的grid无法用setData设数据源 [复制链接]

Rank: 2

跳转到指定楼层
楼主
发表于 2013-3-13 10:49:10 |只看该作者 |倒序浏览
以下的代码无法显示数据,只显表头
    var grid = new mini.DataGrid();
    grid.set({
        style: "width:100%;height:100%;",
        showFooter: false,
        columns: [
            { header: "员工帐号", field: "loginname", width: 120, headerAlign: "center" },
            { header: "姓名", field: "name", width: 120, headerAlign: "center" },
            { header: "性别", field: "gender", width: 100, align: "center" },
            { header: "工资", field: "salary", width: 100},
            { header: "年龄", field: "age", width: 100 }
        ]
    });
    grid.render(document.body);
   var a=[];
   var o = { loginname: 'ee11', name: 'q', gender: 'tt', salary: '222', age: '333' };
        a.push(o);
        grid.setData(a);
换成HTML的方式生成的就没事,
    <div id="grid1" class="mini-datagrid" style="width:100%;height:400px;"
        showFooter="false"
        >        
         <div property="columns">
         <div field="loginname">wwww</div>
         <div field="name">wwww</div>
         <div field="gender">wwww</div>
         <div field="salary">wwww</div>
         <div field="age">wwww</div>
     </div>
</div>
//JS
mini.parse();
var grid = mini.get("grid1");
   var a=[];
   var o = { loginname: 'ee11', name: 'q', gender: 'tt', salary: '222', age: '333' };
        a.push(o);
        grid.setData(a);

Rank: 2

沙发
发表于 2013-3-13 10:57:38 |只看该作者
我的表格是需要动态生成,表格的列数不固定,适合用JS生成。同样的表格,用JS生成的无法用setData,用HTML生成就没问题。

Rank: 8Rank: 8

板凳
发表于 2013-3-13 11:01:08 |只看该作者


代码:
  1. var grid2 = new mini.DataGrid();
  2. grid2.set({
  3.     style: "width:700px;height:280px;",
  4.     valueField: "id",
  5.     columns: [
  6.         { type: "indexcolumn" },
  7.         { field: "loginname", width: 120, headerAlign: "center", allowSort: true ,header:"员工账号"},
  8.         { field: "name", width: 120, headerAlign: "center", allowSort: true ,header:"姓名"}
  9.     ]
  10. });
  11. grid2.render(document.getElementById("datagrid2"));
  12. var data = [
  13.             {"name": "谢忠哲","loginname": "xzz@163.com"},
  14.             {"name": "谢忠哲","loginname": "xzz@163.com"}
  15.             ]
  16. grid2.setData(data);
复制代码



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

Rank: 8Rank: 8

地板
发表于 2013-3-13 11:02:26 |只看该作者
fhtcgym 发表于 2013-3-13 10:57
我的表格是需要动态生成,表格的列数不固定,适合用JS生成。同样的表格,用JS生成的无法用setData,用HTML生 ...


这里有多种方式创建表格

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

Rank: 2

5#
发表于 2013-3-14 15:08:36 |只看该作者
factory 发表于 2013-3-13 11:02
这里有多种方式创建表格

按你的方法没问题,但如改为:  style: "width:100;height:100;",就无法显示数据, 而用HTML生成时这样设置是没问题的, 也就是说JS生成的表格不能设style 的100%? 而HTML 生成就没这个限制.

Rank: 2

6#
发表于 2013-3-14 15:10:14 |只看该作者
是style=" width:100%;height:100%"

Rank: 8Rank: 8

7#
发表于 2013-3-14 15:13:41 |只看该作者
fhtcgym 发表于 2013-3-14 15:08
按你的方法没问题,但如改为:  style: "width:100;height:100;",就无法显示数据, 而用HTML生成时这样设置 ...

高度宽度设置100%的前提,是你外层父元素有确定的高度,如果没有的话,表格头部和底部是挤在一起的

Archiver|普加软件

GMT+8, 2024-11-27 22:27 , Processed in 1.039502 second(s), 11 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部