【发布时间】:2012-02-22 14:39:22
【问题描述】:
我有一个 jqGrid 可以完美地处理复杂的搜索,然后它在提交搜索过滤器后莫名其妙地停止更新网格值。
我已将 NetBeans PHP IDE 设置为调试环境,我可以确认从搜索中正确返回了数据,但网格从不刷新?
说实话,我不知道下一步该做什么...在运行搜索查询后,数据以 XML 格式正确传递,但网格从未显示它?
我在下面包含了 jqGrid JavaScript 代码,以防它提供线索...
只是重申它运行良好,但现在不是。数据正在正确返回,(在 NetBeans 中确认),哦,我有两天后的最后期限:(
任何建议将不胜感激。
jQuery(document).ready(function()
{
jQuery.getJSON(InitGridUrl, function(MetaData)
{
var colNames=new Array(), colModel=new Array();
var ColWidth = jQuery('#grid').width() / ObjectCount(MetaData['Structure']);
var LastModified = new Date(MetaData['LastModified'] * 1000);
jQuery.each(MetaData['Structure'], function(FieldTypeId, Field)
{
colNames.push(Field['Name']);
colModel.push({name:Field['Name'], index:Field['Field'], width:ColWidth, align:Field['Align'], sortable:true});
});
jQuery("#grid").jqGrid
({
url: 'http://localhost/base/_resource/Widgets/jqGrid/getdata.php',
datatype: 'xml',
mtype: 'GET',
colNames:colNames,
colModel :colModel,
pager: '#pager',
rowNum:20,
rowList:[10,20,30,40,50],
sortname: colModel[0]['index'],
sortorder: 'desc',
viewrecords: true,
gridview: true,
caption: MetaData['Title'] + ' [Last Modified: ' + LastModified.toLocaleString().split(' GMT')[0] + ']',
altclass: 'AltRowClass',
altRows: true,
height: 400,
width:"auto",
rownumbers: true
});
jQuery("#grid").jqGrid('navGrid','#pager', {edit:false,add:false,del:false}, {}, {}, {}, {multipleSearch:true, multipleGroup:true, showQuery:true} );
});
});
【问题讨论】:
-
好的,找到问题了... 首先,xdebug 报告了一个错误,因为 PHP.ini 有关于此错误消息的通知,因此该错误消息被添加到 XML 数据集的前缀中。其次,在禁用 xdebug 后,报告了另一个错误,这是我的 PHP 代码发出的警告。修复了代码,一切都恢复正常了。
标签: jquery jqgrid-php