您的示例有助于在 jqGrid 的不同部分找到许多小错误。因此,我对您的声誉 +1。修复the example1和the example2后,我准备演示问题,工作没有任何问题。
我将尝试在今天或明天发布我在the trirand forum 中发现的错误(带有修复程序)。给你的简短信息:我在 grid.custom.js、grid.base.js、jquery.searchFilter.js 和 grid.formedit.js 中做了一些小修复(参见演示中的 *-fixed.js 文件)。 grid.custom.js 中的主要修复:第 575、642 行
ruleGroup += "\"data\":\"" + n + "\"}";
应该换成
ruleGroup += "\"data\":\"" + n.replace(/\\/g,'\\\\').replace(/\"/g,'\\"') + "\"}";
在 grid.base.js 中的第 203 行
phrase=phrase.toString().replace(new RegExp('\\"',"g"),'\\"');
应该换成
phrase=phrase.toString().replace(/\\/g,'\\\\').replace(/\"/g,'\\"');
如果将“多搜索样式”数据过滤(filterToolbar 与选项stringResult: true)与single field searching 结合使用,则需要在 jquery.searchFilter.js 和 grid.formedit.js 中进行修复。
更新:就像我在发布带有我所有修复程序的错误报告之前所承诺的那样 here。我希望 Tony(jqGrid 的开发者)能够阅读并在 jqGrid 的下一个版本中包含修复。