0

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 は正常に動作します。

4

1 に答える 1

0

私は答えを得る: コード エディターは UTF8 BOM 文字セットであるため.BOM uft-8 を使用しない場合、正常に動作します。

于 2013-03-04T14:33:31.947 に答える