jQuery MiniUI

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

grid 获取行对象问题 [复制链接]

Rank: 6Rank: 6

跳转到指定楼层
楼主
发表于 2013-7-29 11:32:33 |只看该作者 |倒序浏览
getRow ( index )获取行对象    是通过索引来获取某行对象


   那么,如何不通过索引来获取grid所有的行对象,getRow没有索引参数,貌似报错!

Rank: 8Rank: 8

沙发
发表于 2013-7-29 11:35:57 |只看该作者
getData()

Rank: 6Rank: 6

板凳
发表于 2013-7-29 12:55:41 |只看该作者
felt 发表于 2013-7-29 11:35
getData()

getData()获取的是grid的数据吧

行对象的属性没有啊,没法操作啊!

Rank: 8Rank: 8

地板
发表于 2013-7-29 13:25:27 |只看该作者
getData()获取的是grid的数据吧

getData()是获取当前页所有行。
你不是要获取grid所有的行吗?

Rank: 6Rank: 6

5#
发表于 2013-7-29 14:05:45 |只看该作者
felt 发表于 2013-7-29 13:25
getData()是获取当前页所有行。
你不是要获取grid所有的行吗?

grid的所有”行对象“

Rank: 8Rank: 8

6#
发表于 2013-7-29 14:30:35 |只看该作者
grid的所有”行对象“

你到底是是要根据什么来获取行?
getData()获取的是包含当前页面所有行对象的一个数组。

Rank: 6Rank: 6

7#
发表于 2013-7-29 16:17:03 |只看该作者
本帖最后由 gry 于 2013-7-29 16:20 编辑
felt 发表于 2013-7-29 14:30
你到底是是要根据什么来获取行?
getData()获取的是包含当前页面所有行对象的一个数组。
...

我的想法是获取grid的所有“行对象”当然每一行的行对象包含每行的数据,应该是一个数组,
我想循环行对象数组,通过每行的 x.field == "剩余数量"来动态改变每一行某一个单元格的值,这样说明白吗?
如果用getData(),获取的数据数组是没有类似于 x.field 的属性的。怎么来判断确定要更新的单元格。
      
1.又发现一个问题就是用grid的“drawcell”单元格绘制事件,发现
var obj;
var row = e.row;
var record = e.record;
        for (var i = 0, l = Genders.length; i < l; i++) {
            var g = Genders;
            if (g.id == e.value) return g.text;
        }
        return "";
        if (e.field == "配送台数") {

            //异步请求跟新配送数量和剩余数量
            $.ajax({
                url: "../RXJ/PSJH_Data.aspx?method=Update_SYSL&ND=" + row.ND号,
                async: false,
                // data: { LCID: mini.get("LCID").getValue(), SHBZ: "SB" },
                type: "post",
                success: function(text) {

                    obj = mini.decode(text);
                },
                error: function() {
                }
            });
      dept_grid.updateRow(record, { 配送台数: obj.配送台数 });

发现出现死循环现象,不知是怎么回事
其实我的需求就是在grid绑定后,根据一个主键去数据库查询一个数据,然后更新每一行的某一个单元格的值,试了好多种方法都不行啊。

Rank: 6Rank: 6

8#
发表于 2013-7-29 16:43:07 |只看该作者
gry 发表于 2013-7-29 16:17
我的想法是获取grid的所有“行对象”当然每一行的行对象包含每行的数据,应该是一个数组,
我想循环行对象 ...

请问该怎么实现!!!

Rank: 8Rank: 8

9#
发表于 2013-7-29 17:24:48 |只看该作者
gry 发表于 2013-7-29 16:43
请问该怎么实现!!!

1. row里面是没有field的,你具体的更改某一个单元格的值,是根据什么来确定这个某个单元格是哪一个的?看看能不能换个方式,如果field已知的话,比如field已知为name,row.name 就行了

2.ondrawcell内部不能用updateRow(),因为updateRow()也会激发你的ondrawcell,当然会造成死循环了

e.cellHtml = '张三';
e.row.name = '张三';
这样来修改

Rank: 6Rank: 6

10#
发表于 2013-7-29 18:01:07 |只看该作者
本帖最后由 gry 于 2013-7-30 08:39 编辑
factory 发表于 2013-7-29 17:24
1. row里面是没有field的,你具体的更改某一个单元格的值,是根据什么来确定这个某个单元格是哪一个的? ...

你说的我也测试了,不报错,但是单元格的值依旧没有改变  

e.cellHtml = '张三';
e.row.name = '张三';
不知你们测试后是可以的吗?请管理员看看我的问题!

Archiver|普加软件

GMT+8, 2024-11-29 04:04 , Processed in 1.033505 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部