gpt4 book ai didi

javascript - 网格未在 Firefox 中呈现

转载 作者:行者123 更新时间:2023-11-30 06:31:46 25 4
gpt4 key购买 nike

我正在使用 EditableGrid动态生成和操作列模型。一切都按照计划进行,除了一个与 Firefox 的兼容性问题(..是的,不是 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 is not defined [var valObj = GetValidatorObject(expression);]

有什么想法吗?

最佳答案

感谢 epascarello,解决方法很简单,我将 GetValidatorObject 方法移出了 with (this) 的范围。现在它适用于 FF。当我进一步深入研究此事时,我发现 avoid using 'with' keyword in JS十分有趣。这可能会清除灰色区域。

关于javascript - 网格未在 Firefox 中呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17107661/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com