2010-07-20 53 views
0

我有一个visualforce页面,我正在使用jqgrid在此页面上显示数据。 jqgrid指向的url是一个仅输出JSON数据的visualforce页面(https://test.visual.force.com/apex/GridResults)。此页面没有任何标题或HTML信息。用visualforce中的数据填充jqgrid页面

问题是,当我运行这个页面时,网格呈现列名但没有数据。 当我运行url时,它输出JSON数据。我在代码下面粘贴了。

jQuery("#list").jqGrid({ 
     url:"https://test.visual.force.com/apex/GridResults", 
     datatype: "json", 
     colNames: [{!fieldNames}], -- property in controller which outputs fieldnames 
     colModel: [{!colModel}], -- property in controller which outputs column definition 
     rowNum: 10, 
     rowTotal:10, 
     rowList: [20, 40, 60], 
     loadonce:true, 
     mtype:"GET", 
     gridView:true, 
     pager: '#pager', 
     sortname: 'Record ID', 
     sortorder: "desc", 
     width: 1200, 
     height: 400, 
     caption: "Accounts" 
    }); 
    jQuery("#list").jqGrid('navGrid', "#pager", { edit: true, add: true, del: false }) 
    }; 

关于为什么页面中的数据没有被jqgrid消耗的任何想法?非常感谢。

+0

你可以尝试调试JavaScript(即使用Firefox插件“Firebug”或IE简单地把“调试器;”声明在JavaScript中的某处)?使用Firebug,您应该能够检查标题(如果有)并确定数据是否实际到达。另外 - jqgrid如何处理MIME类型?也许它需要“application/json”并且Salesforce输出“text/html”? – eyescream 2010-07-20 20:22:38

+0

另外一个:你确定你不需要“jsonReader”或类似的东西吗?查看http://www.trirand.com/jqgridwiki/doku.php?id=wiki:retrieving_data#json_data上的示例和警告,您的JSON是否符合所需的格式? – eyescream 2010-07-20 20:29:52

+0

感谢您的回复eyescream。好点,我没有检查过MIME类型。目前,我通过使用apex:actionFunction调用visualforce控制器做了一个解决方法。当数据返回时,我建立一个数组并将其传递给jqgrid!目前正常工作。 – jack 2010-07-21 08:55:25

回答

0

你看看Visualforce远程?