2011-03-03 3 views
0

PHP를 사용하여 JQGrid 용 JSON을 생성하고 있습니다.JSON 문자열의 추가 매개 변수를 jqGrid로 보내기

$sql_array = preg_split('/LIMIT/', $sql); 
$pass_sql = $sql_array[0]; 
$response->sql = $pass_sql; 
<~SNIP~> 
echo json_encode($response); 

이 클라이언트 측에서 잘 분석하고 다음과 같이 JSON으로있는 jqGrid를 채 웁니다 :

{"page":"1","total":28,"records":"685","sql":"SELECT * FROM fires ORDER BY id desc ","rows":[{"id":"3065","cell":["Southern","Lost Fire","National Forests in Mississippi","492","100","0000-00-00",null,null,null,null,null,null,null,null,null,null,null,"3065","2011-03-03 00:00:00"]},{"id":"3064","cell":["Southern","PineTree","East Central Area Dispatch Office","420","80","2011-03-02",null,null,null,null,null,null,null,null,null,null,null,"3064","2011-03-03 00:00:00"]},{"id":"3063","cell":["Southern","LILAC ROAD","Georgia Forestry Commission","100","100","2011-03-01",null,null,null,null,null,null,null,null,null //etc 

내가 필요 내가 JSON 인코딩 해요 PHP 객체에 다른 속성을 추가 한 JSON 응답에서 SQL param 텍스트를 가져 와서 나중에 DIV에서 숨 깁니다. 이것이 가능한가?

+0

여기에는 몇 가지 디자인 문제가있을 수 있지만 그 외에도 그리드를 채우는 핸들러에서 수행 할 수 있습니다. – Orbit

답변

0

있는 jqGrid로 서버에서 추가 정보를 전송하는 가장 간단한 방법은 userdata (this answer을 볼 수 있습니다. 당신의 JSON 데이터를

{ 
    "page":"1", 
    "total":28, 
    "records":"685", 
    "userdata":"SELECT * FROM fires ORDER BY id desc ", 
    "rows":[ 
     ... 
    ] 
} 

또는

{ 
    "page":"1", 
    "total":28, 
    "records":"685", 
    "userdata": { 
     sql: "SELECT * FROM fires ORDER BY id desc " 
    }, 
    "rows":[ 
     ... 
    ] 
} 

처럼 될 경우 추가 정보가 될 것입니다 jqGrid 내부에 저장하면 $("#grid_id").jqGrid('getGridParam','userData')으로 액세스 할 수 있습니다.

의 경우주의하십시오.. JSON 데이터의 경우 userdata이어야하고 getGridParam : 'userData'이어야합니다.

+0

환상적인! 나는이 일을 포기하고 내가 일하기 시작하자마자 이것을 "해결 된"것으로 표시 할 것입니다. –

관련 문제