Я хочу добавить собственное свойство столбца в некоторые мои столбцы в SlickGrid. У меня есть настраиваемый редактор, который использует regex для проверки ввода. Я хотел бы добавить свойство оператора regex в мои столбцы, чтобы я мог использовать один и тот же редактор для каждого из них и просто захватить в нем уникальный оператор regex. я хочу что-то подобное для колонок:Добавление настраиваемого свойства столбца в SlickGrid
var columns = [{ id: "id", name: "#", field: "id", cssClass: "cell-title", resizeable: true, sortable: true },
{ id: "upc", name: "UPC", field: "upc", resizable: true, sortable: true, editor: regexValidationEditor, regex: /^[a-zA-Z0-9 ]{0,20}$/ },
{ id: "price", name: "Price", field: "price", resizable: true, sortable: true, editor: regexValidationEditor, regex: /^\d*\.?\d{0,3}$/ }];
Тогда, если я мог бы сделать что-то подобное в моей функции валидации:
function regexValidationEditor(args) {
var $value;
var inputBox = "<INPUT class='customInput' type=text />";
var scope = this;
this.init = function() {
$value = $(inputBox)
.appendTo(args.container);
scope.focus();
};
this.validate = function() {
if (!args.column.regex.test($value.val())) {
return { valid: false, msg: "Invalid Data Entry" };
}
return { valid: true, msg: null };
};
this.init();
}
Очевидно, что это не работает, но это по линии того, что я хочу делать.
Я думаю, что каждая запись колонки должна содержать запись описательного сообщения, если проверка не пройдена. – sln
Я не уверен, что правильно понял ваш вопрос, но вы ищете редактор/валидатор Regex? Если это то, что вы ищете, тогда, пожалуйста, посмотрите на ответ, который я сделал на очень похожий вопрос http://stackoverflow.com/a/9301137 ... если это не так, то не могли бы вы объяснить немного больше , Надеюсь, это поможет. Вы всегда можете проголосовать за другой ответ, иначе я тоже смогу ответить на этот вопрос :) – ghiscoding
@ghiscoding Вот и все! Я не был уверен, как получить доступ к настраиваемым полям, если я поместил их в столбец, но я вижу, что вы получили их через args.column.editorOptions. –