jQuery MiniUI

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

表格验证可以只验证我编辑过的行吗? [复制链接]

Rank: 3Rank: 3

跳转到指定楼层
楼主
发表于 2015-5-29 16:06:39 |只看该作者 |倒序浏览
我用grid.validate();这个方法去验证时,会验证全部表格,但是现在的需求时,只验证我编辑过的行,没有编辑过的不用理会,这个有比较简洁的处理方法吗?

Rank: 8Rank: 8

沙发
发表于 2015-5-29 16:27:52 |只看该作者
grid.validateRow(row)
可以验证指定行,你可以获取你需要验证的行,遍历去验证

Rank: 3Rank: 3

板凳
发表于 2015-5-29 18:21:21 |只看该作者
dforce 发表于 2015-5-29 16:27
grid.validateRow(row)
可以验证指定行,你可以获取你需要验证的行,遍历去验证 ...

方法有效的,但是validateRow()这个方法怎么在API里找不到?

Rank: 3Rank: 3

地板
发表于 2015-6-1 08:43:49 |只看该作者
dforce 发表于 2015-5-29 16:27
grid.validateRow(row)
可以验证指定行,你可以获取你需要验证的行,遍历去验证 ...

var modifiedRows = grid.getChanges('modified',false);//获得修改行
if(!grid.validateRow(modifiedRows)){
   var error = grid.getCellErrors()[0];//显示错误的位置
    grid.beginEditCell(error.record, error.column);      
   return;
}
我这样验证的话,如果这一行有一个为空的单元格(修改之前是就是空的,但是保存的时候不能为空),如果没有编辑过,验证后,它就不会把光标定位到这个单元格,这个要怎么解决?

Rank: 8Rank: 8

5#
发表于 2015-6-1 09:33:45 |只看该作者
凌雪 发表于 2015-6-1 08:43
var modifiedRows = grid.getChanges('modified',false);//获得修改行
if(!grid.validateRow(modifiedRo ...

不常用的API我们很多没开放
validateRow是验证单行,getChanges获取到的多行,你这样写是什么意思

Rank: 3Rank: 3

6#
发表于 2015-6-1 09:51:41 |只看该作者
dforce 发表于 2015-6-1 09:33
不常用的API我们很多没开放
validateRow是验证单行,getChanges获取到的多行,你这样写是什么意思 ...

哦,原来这个只能验证单行,那我遍历验证的时候,遇到验证不通过的时候,如果让它定位错误单元格,并给出错误提示?

Rank: 3Rank: 3

7#
发表于 2015-6-1 10:16:33 |只看该作者
本帖最后由 凌雪 于 2015-6-1 10:17 编辑
dforce 发表于 2015-6-1 09:33
不常用的API我们很多没开放
validateRow是验证单行,getChanges获取到的多行,你这样写是什么意思 ...

var modifiedRows = grid.getChanges('modified',false);//获得修改行
for(var i =0;i<modifiedRows.length;i++){
alert(grid.validateRow(modifiedRows));
}

我这样遍历验证,alert的内容是undefined

Rank: 8Rank: 8

8#
发表于 2015-6-1 10:21:51 |只看该作者
凌雪 发表于 2015-6-1 10:16
var modifiedRows = grid.getChanges('modified',false);//获得修改行
for(var i =0;i

这方法又没有返回值,你想获取什么

Rank: 3Rank: 3

9#
发表于 2015-6-1 10:36:22 |只看该作者
dforce 发表于 2015-6-1 10:21
这方法又没有返回值,你想获取什么

我想知道这一行验证有没有通过,那个这个方法调用后的效果是怎样的,我怎样在保存的时候,知道它验证有没有通过?类似于下面这样:
if(grid.validate()){
//执行保存操作
}

Rank: 8Rank: 8

10#
发表于 2015-6-1 11:09:13 |只看该作者
凌雪 发表于 2015-6-1 10:36
我想知道这一行验证有没有通过,那个这个方法调用后的效果是怎样的,我怎样在保存的时候,知道它验证有没 ...

validateRow是对一行进行验证,只是执行方法,
你可以用grid.isValid()来判断是否通过验证

Archiver|普加软件

GMT+8, 2025-6-18 14:30 , Processed in 1.068456 second(s), 10 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部