igGrid の 入力検証機能 (igValidator) をご利用頂くと、特定セルの値に応じて入力検証ができます。

     var editedCellRowID;
        $(function () {

            //igGrid
            $("#grid").igGrid({
                autoGenerateColumns: false,
                primaryKey: "ID",
                width: "auto",
            	autoCommit: true,
                columns: [
                    { headerText: "ID", key: "ID", dataType: "number" },
                    { headerText: "数値", key: "Number", dataType: "number" },
                    { headerText: "最大値", key: "MaxNumber", dataType: "number" }
                ],
                dataSource: SampleData,
                features: [
                    {
                        name: "Updating",
                        editCellStarted: function(evt, ui){
                            // 対象行IDを取得
                            editedCellRowID = ui.rowID;
                        },
                        columnSettings: [ 
                            {
                                columnKey: "ID",
                                required: true,
                                readOnly: true,
                            },
                            {
                                columnKey: "Number",
                                required: true,
                                readOnly: false,
                                editorOptions:{
                                    validatorOptions: {
           // カスタム検証用メソッド
                                        custom: function (value, fieldOptions) {
                                            // 入力チェック
                                            // 同行の最大値を取得
                                            var maxValue = $("#grid").igGrid("getCellValue", editedCellRowID, "MaxNumber");
                                            if(maxValue < value){
                                                return false;
                                            }
                                            return true;
                                        },
                                        errorMessage : "MaxNumber より大きい値が設定されています。"
                                    }
                                }
                            },
                            {
                                columnKey: "MaxNumber",
                                editorOptions: {
                                    readOnly: true,
                                    disabled: false,
                                },
                            },
                        ]
                    }
                ]
            }); 

        });

実行結果

サンプルコード

製品について

Ignite UI for jQuery