easyui验证插件Validator

$.extend($.fn.validatebox.defaults.rules, {
    //采购单位
    cbbUnit: {
        validator: function (value, param) {
            var index = $(this).parents("td[field='caiunitId']").parent().attr("datagrid-row-index");
            if (index == undefined)
                return;
            var _target = $(this).parents(".datagrid-view:first").children(".datagrid-f");
            var row = $(_target).datagrid("getRows")[index];
            var result = true;
            try {
                var tgCaiunit=$(_target).datagrid('getEditor', {'index':index,'field':'caiunitId'}).target;
                var caiunitData=tgCaiunit.combobox('getData');
                if (value == "") {
                    result = false;
                    return;
                }
            } finally {
                if (result) {
                    for(var i=0;i<caiunitData.length;i++) {
                        if (tgCaiunit.combobox('getData')[i].dict == value) {
                            row.caiunitId=tgCaiunit.combobox('getData')[i].did;
                            row.caiunit = value;
                        }
                    }

                    $(_target).datagrid("updateRow", {index: index, row: row});

                }
                return result;
            }
        },
        message: '单位选择有误!'
    },
    //数量输入验证
    numPNum: {
        validator: function (value, param) {
            if ($(this).hasClass("validatebox-readonly")) {
                return true;
            }
            var index = $(this).parents("td[field='pNum']").parent().attr("datagrid-row-index");
            if (index == undefined)
                return;
            var _target = $(this).parents(".datagrid-view:first").children(".datagrid-f");
            var row = $(_target).datagrid("getRows")[index];

            var result = true;
            try {
                if (parseFloat(value) <= 0) {
                    result = false;
                    return;
                }
            } finally {
                if (result) {
                    row.pNum = parseFloat(value).toFixed(4);
                    $(_target).datagrid("updateRow", {index: index, row: row});

                }
                return result;
            }
        },
        message: '数据输入有误!'
    }
});
$('#chaGrid').datagrid({
    height: 200,
    columns: [[
        {field: 'itemId', width: 150, align: 'center', id: 'itemId', hidden: 'true'},      
        {field: 'caiunit', hidden: 'true', id: 'caiunit', editor: {type: 'textbox', options: {editable: false}}},
        {
            field: 'caiunitId', title: '单位', width: 60, align: 'center', id: 'caiunitId',formatter:function (val,row) {
            return row.caiunit;
        },
            editor: {
                type: 'combobox',
                options: {
                    valueField: 'did',
                    textField: 'dict',
                    editable: true,
                    required: true,
                    validType:"cbbUnit",
            }
        },
        {field: 'pNum', title: '数量', width: 90, align: 'center',
            editor: {
                type: 'numberbox',
                options: {
                    min: 1,
                    validType: 'numPNum',
                    precision: 4,
                    required: true
                }
            }
        },

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值