joomla(バージョン 2.5.9) で jqgrid(バージョン 4.4.4) を使用するためのコードを作成します。jqgrid url:testjson.php で問題ない場合。
<?php
header('Cache-Control: no-cache, must-revalidate');
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header("Content-Type: application/json;charset=utf-8");
header('Content-Disposition,attachment;filename=”json.json”');
$response=new stdClass();
$response->page = 1;
$response->total = 1;
$response->records = 1;
$response->rows[0]['id']='1';
$response->rows[0]['cell']=array("1","vlan");
echo json_encode($response);
?
json:{"page":1,"total":1,"records":1,"rows":[{"id":"1","cell":["1","vlan"] を取得します}]}、およびjqgridは正常に動作します。
jqgrid url:index.php?option=com_sysconfig&view=vlan&task=ajaxvlane.getvlanlist&format=raw の場合
サブコントローラーでは、関数 getvlanlist で、このコードは打撃です:
<?php
header('Cache-Control: no-cache, must-revalidate');
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
header("Content-Type: application/json;charset=utf-8");
header('Content-Disposition,attachment;filename=”json.json”');
$response=new stdClass();
$response->page = 1;
$response->total = 1;
$response->records = 1;
$response->rows[0]['id']='1';
$response->rows[0]['cell']=array("1","vlan");
echo json_encode($response);
JFactory::getApplication()->close();
?>
firebug を通して、json:{"page":1,"total":1,"records":1,"rows":[{"id":"1","cell":["1", "vlan"]}]} testjson.php の結果と同じ。
しかし、jqgrid はデータを表示できません。
どのようなエラーが問題を引き起こしていますか?ありがとうございます。
ところで、xml データを作成する joomla を使用する場合、jqgrid は正常に動作します。