Javascript jqGrid未显示数据,无错误

Javascript jqGrid未显示数据,无错误,javascript,jquery,jqgrid,Javascript,Jquery,Jqgrid,好的,这主要在调用我的PHP操作时起作用,并从查询返回JSON数据。问题是jqGrid不会显示数据。我错过了什么?我已经阅读了这里和其他地方关于这个主题的每一篇文章。这看起来应该行得通 HTML: 这是我的数据: { "total": 0, "page": "1", "records": 1, "rows": [ { "id": 0, "row": { "baseNam

好的,这主要在调用我的PHP操作时起作用,并从查询返回JSON数据。问题是jqGrid不会显示数据。我错过了什么?我已经阅读了这里和其他地方关于这个主题的每一篇文章。这看起来应该行得通

HTML:

这是我的数据:

{
    "total": 0,
    "page": "1",
    "records": 1,
    "rows": [
        {
            "id": 0,
            "row": {
                "baseName": "Stratos",
                "location": "J15:32:53:41",
                "wormhole": "",
                "income": 78,
                "economy": 78,
                "ownerGuild": "CDA",
                "ownerNick": "D-Day 9000",
                "ownerLevel": "17.14",
                "occGuild": "",
                "occNick": "",
                "jumpGate": 0,
                "commandCenter": 1,
                "photons": "0",
                "dshields": "0",
                "disruptors": "0",
                "pshields": "0",
                "prings": "0",
                "debris": 0,
                "fleetSize": "22250",
                "daysOld": 11,
                "updatedBy": 3057
            }
        }
    ]
}

我在JSON数据末尾看到的唯一错误是“},]}”。您应该删除']'之前的逗号

在进行微小的更改后,可以重现您的测试示例,而不会出现任何可见的问题


更新:也可以正常工作。我想错误就在你没有贴在这里的代码部分。例如,我将您的代码放在
jQuery(document).ready(函数(){/*代码*/})中。我必须删除
postData
参数,因为您在代码中使用的
data
值没有定义。正是出于同样的原因,我不得不更改
url
参数中使用的
indexUrl
变量。参数
rowNum:$('#basePageSize').val()
看起来也很奇怪,我将其替换为
rowNum:20
。如果您可以将url发布到工作(非工作)原始解决方案或真正完整的HTML和JavaScript代码,您可能会得到帮助。

我也有同样的问题。显示的jqgrid不返回XML。我注意到注册表数据库有一些特殊字符,如“&”。问题出在浏览器上。通过将CDATA标记字段return放在XML中,决定如下:

sb.Append ("<cell>"); sb.Append ("<! [CDATA [" + g.Name + "]"); sb.Append ("]> </ cell>");
sb.Append(“”);某人加上(“”);

OK,数据错误不在我的实际数据中,而是输入错误。它是否适用于此数据:我编辑了问题以包含实际数据,但它不适用。很高兴看到你从我的数据中得到了一张表,但我不能:(@Tim Brown:我更新了我的答案。顺便说一句,我的示例不仅显示了你的数据,而且还使用了你发布的90%以上的代码。postData只是来自我传递给where子句的表单的参数。js在一个sep.js文件中。它被称为fine,实际上网格正在渲染。我看到了加载符号。我看到查询已执行你可以看到结果。如果有办法调试jqgrid返回,我会的。html内容是否在div中并不重要,是吗?我不这么认为,因为网格确实呈现并提交了正确的请求。@Tim Brown:首先
'
public function basereportAction()
{
    try
    {
      $params = $this->_getAllParams();
      //Log::logErr('params:'.print_r($params, true));

      $data = $this->_getParam('data');
      //Log::logErr('Data:'.print_r($data, true));

      $reportParams->request = json_decode($data);
      //Log::logErr('DSIS Obj:'.print_r($obj, true));

      $reportParams->request->dsisPage = $this->_getParam('page');
      $reportParams->request->dsisPageSize = $this->_getParam('rows');
      $reportParams->request->dsisOrderBy = $this->_getParam('sidx');
      $reportParams->request->dsisSortDir = $this->_getParam('sord');

      $base = new Base();
      // $result is a PHP array
      $result = $base->outputDSISReportHtml($reportParams, true);

      $js = json_encode($result);
      Log::logErr('JSON:'.$js);

      $callback = $this->_getParam('callback');

      echo $js;
    }
    catch( Exception $e)
    {
        Log::logErr('DSISReportController::basereport:Error:'.$e->getMessage());
        throw $e;
    }
}
{
    "total": 0,
    "page": "1",
    "records": 1,
    "rows": [
        {
            "id": 0,
            "row": {
                "baseName": "Stratos",
                "location": "J15:32:53:41",
                "wormhole": "",
                "income": 78,
                "economy": 78,
                "ownerGuild": "CDA",
                "ownerNick": "D-Day 9000",
                "ownerLevel": "17.14",
                "occGuild": "",
                "occNick": "",
                "jumpGate": 0,
                "commandCenter": 1,
                "photons": "0",
                "dshields": "0",
                "disruptors": "0",
                "pshields": "0",
                "prings": "0",
                "debris": 0,
                "fleetSize": "22250",
                "daysOld": 11,
                "updatedBy": 3057
            }
        }
    ]
}
sb.Append ("<cell>"); sb.Append ("<! [CDATA [" + g.Name + "]"); sb.Append ("]> </ cell>");