jqGrid无法从服务器加载xml数据

时间:2009-08-21 01:40:52

标签: javascript jquery xml jqgrid

我正在使用jqGrid 3.5.2并且遇到从服务器端加载xml文件的问题。

BTW我发现了一个类似的帖子,但是没有多大帮助。

这是我的客户端代码:

$(”#list4″).jqGrid({ url:'http://localhost/cgi-bin2/test.pl', datatype: 'xml',
         mtype: 'GET', height: 400, colNames:['No','Date'],
         colModel:[ {name:'call', index:'call', width:60, sorttype:'int'},
                    {name:'num',index:'num', width:90, sorttype:'int'}],
         multiselect: true,
         rowNum:10, rowList:[10,20,30], sortname: 'call',
         viewrecords:true, caption:'dummy'});

我的服务器端响应返回:

Content-Type: Content-type: text/xml;charset=utf-8 
   <?xml version='1.0' encoding = 'utf-8'?>
   <rows> <page>1</page> <total>1</total> <records>2</records>
   <row><cell>20</cell><cell>200</cell></row>
   <row><cell>30</cell><cell>300</cell></row> </rows>

客户端通过Ajax正确接收整个数据,但遗憾的是没有向表格显示添加数据。代码出了什么问题?

2 个答案:

答案 0 :(得分:0)

  • 您不能对JavaScript字符串或XML属性使用花哨的引号。
  • 在最后一个HTTP响应标头之后需要额外的换行符。
  • xmlversion中的“xml”和“version”之间添加空格。
  • 确保gridimgpath已定义。

答案 1 :(得分:0)

如果该行

Content-Type: Content-type: text/xml;charset=utf-8

是响应缓冲区本身的文本的一部分,然后它不应该存在。 响应缓冲区必须是纯XML。 有关示例,请参阅documentation