java - jqgrid解析器错误

标签 java jquery jqgrid xml-parsing

我正在使用 JSP 和 Servlet(IDE:Eclipse,数据库:Oracle10)开发 Web 应用程序。我正在使用 jqGrid 以表格格式显示记录。

我正在使用datatype: "xml"对于 jqgrid .

我在数据库中有一个字段用于存储 address该字段包含特殊字符,如 , ; &等等。如果Address中的任何一个数据库包含&然后jqgrid正在给我留言 response 200 ok, type: parsererror并且网格中没有显示任何数据,如果我删除 &来自数据库,那么它不会向我显示此消息并在网格中显示数据。

 {name:'ADDRESS',index:'ADDRESS', width:80,sortable:true,editable:true}

所以我的问题是我应该如何发送数据,其中包含 &

更新1:

我知道有些字符是 XML reserved characters喜欢 & <> ,但在这种情况下我必须写 loop用于检查服务器端的地址,如果该地址包含此保留字符,那么我必须将它们写为 hexadecimal ,那么有没有更好的方法呢?

更新2: 我正在使用 Servlet。 以下是我的代码片段。

out.print("<cell>" +ADDRESS +"A&BC"+"</cell>");//will show parsererror

out.print("<cell>" +ADDRESS +"A"+"</cell>");//will not show error, and data is diplayed

提前致谢...

最佳答案

要放置具有 XML 保留字符的信息,您必须使用 XML 保留字符 <![CDATA[...]]> (例如,请参阅 herehere)构造以生成正确的 XML 数据。

在客户端,您还应该使用 autoencode: true另外还有 jqGrid 选项。

关于java - jqgrid解析器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15061769/

相关文章:

javascript - 更改 bootstrap 4 下拉菜单选项以在 html 中显示和隐藏 div

jquery - 为什么 Ajax 在第一个请求时可以正常工作,但在第二个请求时会在新页面上返回部分 View ?

jquery - 如何将表单与jQgrid绑定(bind)?

javascript - jqGrid - 使用 setSelection 始终选择第一行不起作用

javascript - 如何更改 jqgrid 工具栏和操作列中的删除图标

java - 如何销毁静态对象? - 测试静态字段时出现问题

java - Android - 使用 Handler 和 postDelayed 定期运行方法

javascript - 从文本链接启动 jPlayer

java - vaadin 在键盘事件上删除行

java - 如何在给定的包中找到带注释的方法?