jQuery MiniUI

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

miniui 点击按钮获取datagrid某一列值并循环遍历对其进行验证 [复制链接]

Rank: 3Rank: 3

跳转到指定楼层
楼主
发表于 2016-11-10 10:06:23 |只看该作者 |倒序浏览
本帖最后由 wangqianwq 于 2016-11-10 10:09 编辑

miniui 点击按钮获取datagrid某一列值并循环遍历对其进行验证是否为“76f32bbb-7b4d-4e19-983a-f04cce7426c8”全球统一标识编号,不成功则单元格颜色发生改变,不允许保存,应该怎么写
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 3Rank: 3

沙发
发表于 2016-11-10 10:21:02 |只看该作者
同求遍历方法,有获取整行数据的方法,怎么会没有获取整列数据的方法?

Rank: 8Rank: 8

板凳
发表于 2016-11-10 11:15:39 |只看该作者
没有列数据这个概念,数据都是行的
你这可以在onvalidation事件里处理,就是自定义验证了
  1. grid.on("validation", function (e) {
  2.             var rows = grid.getData();
  3.             var index = grid.indexOf(e.record);
  4.             if (e.field == "...") {
  5.                 for (var i = 0, l = rows.length; i < l; i++) {
  6.                     if (i != index && rows[i].xx == e.record.xx) {
  7.                         e.isValid = false;
  8.                         e.errorText = "有重复";
  9.                     }
  10.                 }
  11.             }
  12.         })
复制代码

Rank: 3Rank: 3

地板
发表于 2016-11-10 11:23:43 |只看该作者
...和XX都是填的验证列的field吗?好像还是不能验证啊

Rank: 3Rank: 3

5#
发表于 2016-11-10 11:28:03 |只看该作者
felt 发表于 2016-11-10 11:15
没有列数据这个概念,数据都是行的
你这可以在onvalidation事件里处理,就是自定义验证了 ...

这个事件什么时候发生啊??

Rank: 8Rank: 8

6#
发表于 2016-11-10 11:40:58 |只看该作者
zzbcome 发表于 2016-11-10 11:28
这个事件什么时候发生啊??

编辑结束,自动验证http://www.miniui.com/demo/#src=datagrid/cellvalidation.html

Rank: 3Rank: 3

7#
发表于 2016-11-10 12:42:59 |只看该作者
felt 发表于 2016-11-10 11:40
编辑结束,自动验证http://www.miniui.com/demo/#src=datagrid/cellvalidation.html

function onCellValidation(e) {
            if (e.field == "PestId") {
                $.ajax({
                    url: "../../AjaxService/MES_Ajax.aspx?method=GetPestNameTypeNew&PestId=" + e.value,
                    cache: false,
                    success: function (text) {
                        var o = mini.decode(text);
                        if (o == "" || o == null || o == "undefined") {                        
                            e.isValid = false;
                            e.errorText = "林业有害生物不存在!请重新检索并选择!";
                        }
                    }
                })
            }
        }
我就是这样写的,没有用,方法也进去了

Rank: 8Rank: 8

8#
发表于 2016-11-10 13:09:07 |只看该作者
wangqianwq 发表于 2016-11-10 12:42
function onCellValidation(e) {
            if (e.field == "PestId") {
                $.ajax({

请使用同步的ajax

Rank: 3Rank: 3

9#
发表于 2016-11-10 14:38:12 |只看该作者
felt 发表于 2016-11-10 13:09
请使用同步的ajax

好了,设置了一下async: false,就好了

Archiver|普加软件

GMT+8, 2025-6-7 03:08 , Processed in 1.066883 second(s), 10 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部