jQuery MiniUI

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

单元格自动计算的值无法获取。 [复制链接]

Rank: 2

跳转到指定楼层
楼主
发表于 2013-4-17 18:52:53 |只看该作者 |倒序浏览

如图,我在在grid里新建一条记录,输入单价、张数和重量。金额=单价*张数*重量。是自动计算出来的。
然后,我想把这条记录保存到数据库里,但是实际金额不会被提交到数据库。
如图,没有amount的值。
个人感觉是因为GRID获取的是修改新增过的数据,由于amount的值是自动计算出来,不是我点击单元格输进去的,所以就这样了。
不知有没有办法解决。
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

沙发
发表于 2013-4-17 19:48:59 |只看该作者
如果只是一个展现的话,可以通过修改cellHtml 来修改单元格的值

但是如果需要取出来的话,比如金额那列叫total,用grid.updateRow(row,{total:XXX})

Rank: 3Rank: 3

板凳
发表于 2013-10-26 16:56:36 |只看该作者
factory 发表于 2013-4-17 19:48
如果只是一个展现的话,可以通过修改cellHtml 来修改单元格的值

但是如果需要取出来的话,比如金额那列叫t ...

updateRow 应该放在哪里能及时跟新数据,如图位置报错Maximum call stack size exceeded
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

地板
发表于 2013-10-28 09:34:12 |只看该作者
JavaBean 发表于 2013-10-26 16:56
updateRow 应该放在哪里能及时跟新数据,如图位置报错Maximum call stack size exceeded
...

手动操作的时候,可以调用updateRow()

如果是初始化表格的时候,你可以这样把数据上也加上汇总的值
  1. function onDrawCell(e) {
  2.             var record = e.record;

  3.             if (e.field == "total") {
  4.                 var price = record.price;
  5.                 var quantity = record.quantity;
  6.                 var total = price * quantity;
  7.                 e.cellHtml = total;
  8.                 record.total = total;
  9.             }
  10.         }
复制代码

Archiver|普加软件

GMT+8, 2024-9-21 04:25 , Processed in 1.042444 second(s), 10 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部