Я все еще пытаюсь получить функцию viewGridRow в jqgrid для обработки сеток, имена столбцов которых содержат пробелы.Я придумал хак, чтобы заменить пробелы подчеркиванием, но мне сказали, что вместо этого я должен использовать jqID.В частности,
Если вы хотите изменить код, вам лучше использовать $ .jgrid.jqID вместо замены пробелов на дешифровку.Функция $ .jgrid.jqID используется в большинстве мест кода jqGrid, но все же не везде.Проблема это очень легко.Если у вас есть метасимволы как часть идентификатора, и вы хотите использовать идентификатор как часть селектора jQuery, вам нужно экранировать символы.Метод $ .jgrid.jqID выполняет именно эту работу.
Глядя на исходный код внутри grid.base.js, я вижу, что функция определена как
$.extend($.jgrid,{
jqID : function(sid){
return String(sid).replace(/[!"#$%&'()*+,.\/:;<=>?@\[\\\]\^`{|}~]/g,"\\$&");
}
});
что наводит меня на мысль, что, возможно, его следует использовать в функции beforeProcessing () для изменения идентификаторов ячеек?Несмотря на это, я не вижу, чтобы регулярное выражение, как оно существует в настоящее время, специально обрабатывает пробелы.
Олег, если вы там, помогите !!!:)