jQuery MiniUI

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

datagrid 更新数据失败 [复制链接]

Rank: 3Rank: 3

跳转到指定楼层
楼主
发表于 2015-1-16 13:52:20 |只看该作者 |正序浏览
  mini.open({
        url: "WfFlowStep.aspx?Type=" + Type,
        onload: function() {
                var data = parent.getStepNameId();
                var iframe = this.getIFrameEl();
                var cbox = iframe.contentWindow.mini.get("cbox2");
                cbox.setData(data);
        },
        ondestroy: function(action) {
            var iframe = this.getIFrameEl();
            var data = iframe.contentWindow.NewStepObj;
            var grid = mini.get("datagridStepMsg");
          if (action == "update") {
                var selectRow = grid.getSelected();
                var updateRow = { Data: null }; //,where:data.data
                grid.updateRow(selectRow, updateRow);
            }
        }
    });
在最后红色的步骤会 报错,提示说
SCRIPT5011: 不能执行已释放 Script 的代码
miniui.js, 行8 字符325554
求解 怎么解决?是什么原因?(在IE10中会报该错误)

Rank: 8Rank: 8

13#
发表于 2015-1-19 14:09:40 |只看该作者
stone1314 发表于 2015-1-19 13:47
我发现规律了,主界面中有grid,弹跳页中向主页面中添加一条记录,然后 再在弹跳也中修改grid的新添加的 ...

做个完整的例子打包上来吧

Rank: 3Rank: 3

12#
发表于 2015-1-19 13:47:59 |只看该作者
dforce 发表于 2015-1-16 16:33
那只能你那边简化页面慢慢找了

我发现规律了,主界面中有grid,弹跳页中向主页面中添加一条记录,然后 再在弹跳也中修改grid的新添加的记录,当grid调用updateRow的时候,   就会报错了,是不是因为grid被释放的原因呢??

mini.open({
        url: "WfFlowStep.aspx?Type=" + Type + "&mouldId=" + MouldID + "&StepFID=" + StepFID + "&Operate=" + Operate + "&FlowId=" + $("#FlowId").val(),
        title: stepName, width: 1100, height: 900,
        onload: function() {
        },
        ondestroy: function(action) {
            var iframe = this.getIFrameEl();
            var data = iframe.contentWindow.NewStepObj;
            if (action == "ok") {
                var grid1 = mini.get("datagridStepMsg");
                var FID = getFID('saStep');
                data.TableName = $("#TableName").val();
                data.FID = FID;
                var newRow = { StepName: data.StepName, StepNote: data.StepNote, StepTypeID: data.stepTypeID, StepTypeName: data.stepTypeName, FID: FID, Data: data }; //,where:data.data
                var length = grid1.data.length;
                grid1.addRow(newRow, length);
                grid1.deselectAll();
                grid1.select(newRow);
            } else if (action == "update") {
                var grid = mini.get("datagridStepMsg");
                var selectRow = grid.getSelected();

                var updateRow = { Data: null }; //,where:data.data
                grid.updateRow(selectRow, updateRow);

                var updateRow = { StepName: data.StepName, StepNote: data.StepNote, Data: data }; //,where:data.data

                grid.updateRow(selectRow, updateRow);
                grid.deselectAll();
                grid.select(updateRow);
            }
        }
    });

Rank: 8Rank: 8

11#
发表于 2015-1-16 16:33:27 |只看该作者
stone1314 发表于 2015-1-16 16:24
我在想  是不是 grid控件 是不是 被占用着  所以报这个错?

那只能你那边简化页面慢慢找了

Rank: 3Rank: 3

10#
发表于 2015-1-16 16:24:21 |只看该作者
dforce 发表于 2015-1-16 16:05
我发那个例子也会报你那个错误吗?
本地测试没问题的

我在想  是不是 grid控件 是不是 被占用着  所以报这个错?

Rank: 3Rank: 3

9#
发表于 2015-1-16 16:07:29 |只看该作者
dforce 发表于 2015-1-16 16:05
我发那个例子也会报你那个错误吗?
本地测试没问题的

嗯  你发的例子 没问题的

Rank: 8Rank: 8

8#
发表于 2015-1-16 16:05:08 |只看该作者
stone1314 发表于 2015-1-16 15:52
好奇怪    我直接走“  var grid = mini.get("datagridStepMsg");
                            var sel ...

我发那个例子也会报你那个错误吗?
本地测试没问题的

Rank: 3Rank: 3

7#
发表于 2015-1-16 15:52:01 |只看该作者
dforce 发表于 2015-1-16 15:30
ondestory里面
var data=iframe....
var newData=mini.clone(data)  克隆一下,后面用这个数据看看 ...

好奇怪    我直接走“  var grid = mini.get("datagridStepMsg");
                            var selectRow = grid.getSelected();
                             var updateRow = { Data: null }; //,where:data.data
                            grid.updateRow(selectRow, updateRow); ”
更新列的时候才报  那个错,引用数据的代码我都注释掉了

Rank: 8Rank: 8

6#
发表于 2015-1-16 15:30:34 |只看该作者
stone1314 发表于 2015-1-16 15:21
也是有的

碰见这样的情况 怎么弄呢?

ondestory里面
var data=iframe....
var newData=mini.clone(data)  克隆一下,后面用这个数据看看

Rank: 3Rank: 3

5#
发表于 2015-1-16 15:21:10 |只看该作者
dforce 发表于 2015-1-16 15:02
按照你的代码写了一下貌似没报错,你测试一下
一般报你那个错误是引用到关闭页面的数据了,看你贴的代码 ...




  也是有的

碰见这样的情况 怎么弄呢?
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Archiver|普加软件

GMT+8, 2024-7-1 02:37 , Processed in 1.046364 second(s), 10 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部