jqgrid 對編輯行填寫的內容做格式驗證


有時,我們需要在基於jqgrid表格編輯行的單元格做規范驗證。jqgrid提供有支持,通過設置字段的editrules屬性來約束格式。

約束方式:

1、內置的約束參數 (required: true, number:true ...),詳細參考:jqgrid editrules參數說明

2、自定義函數,驗證約束 custom_func


 

示例:以下黃色字體為編輯的內容約束設定。

colModel: [            
     {
         label: '領導打分',
         name: 'MarkScore',
         width: 150,
         editable: true,
         editrules: { required: true, number: true, custom: true, custom_func: ValidateTvalue },
         edittype: "text"
     },
      ...
]

自定驗證的函數內容可能如下:

//自定義驗證 value=輸入控件的值,name=列名稱(來自colModel)
function ValidateTvalue(value,name) {
        //#region 驗證分數是否為數值
        var regu = "^[0-9]+(.[0-9]{2})?$";
        //var regu = "/^\+?(\d*\.\d{2})$/";
        var re = new RegExp(regu);
        if (re.test(value)) {
            return [true, ""];
        }
        else {
            return [false, "分數【" + rowDatas.MarkScore + "】錯誤,請輸入數值型.如:12或12.23"];
        }
        //#endregion
}

函數的返回值說明:

用[]闊起,第一個代表是否通過,第二個參數代表未/通過時彈出的提示信息。

1)如果驗證通過,返回方式:return [true, ""];

2)如果驗證失敗,返回方式:return [false, "分數【" + rowDatas.MarkScore + "】錯誤,請輸入數值型.如:12或12.23"];


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM