2

EditableGridを使用して、列モデルを動的に生成および操作しています。Firefox との互換性の問題が 1 つだけあったことを除いて、すべてが計画どおりに進んでいます (..はい、IE ではありません ---)。これはある種の閉鎖の問題であると理解していますか?これを回避する方法はないようです。これは何かがうまくいかないところです:

EditableGrid.prototype.initializeGrid = function () {
    with (this) {
        //apply cell validators and inforenderers in headers
        var regex = [];
        for (var count = 0; count < selectedColumnNames.length; ++count) {
            var columnObj = findSelectedColumnObject(selectedColumnNames[count]);

            //check if regex is provided
            if (!(columnObj[0].validationRegex == "")) {
                // add a cell validator
                var expression = new RegExp(columnObj[0].validationRegex);
                regex[columnObj[0].name] = new RegExp(columnObj[0].validationRegex);
                var valObj = GetValidatorObject(expression);
                addCellValidator(columnObj[0].name, valObj);
            }
        }

        function GetValidatorObject(regObj){
            var obj = {
                isValid: function (value) {
                    return value == "" || (regObj.test(value));
                }
            };
            return new CellValidator(obj);
        }
}

スローされる例外は次のとおりです。

ReferenceError: GetValidatorObject が定義されていません [var valObj = GetValidatorObject(expression);]

何か案は?

4

1 に答える 1