2011-08-22 1 views
0

"$. 아약스"를 사용하여 다른 데이터 교환과 마찬가지로 MODx에서 jqGrid를 돌리려고합니다. URL에서 암호로 보호 된 리소스로 호출을 이동하고 PHP 코드 스 니펫을 호출하므로 !사용자 정의 : 소스 파일을 변경하지 않고 jqGrid의 POST 출력?

 $.ajax ({ 
       url :'[[~94]]', 
       type: 'post', 
       async: false, 
       success: function(rsp) { 
           $.Cookie("xxxxxx-tipodirlist", rsp); 
          } 

      }); 

* [[~ 94] 발췌 호출 내에서 보호 된 자원이다 [[SnpBridgedata_blabla : 보안 프레임 워크는 AJAX 호출이

이것은 청크 $의 아약스의 한 예입니다 보장 ]]

시스템은 웹 응용 프로그램을 통해 완벽하게 작동하여 안전하고 안전하게 데이터를주고받습니다.

고객이 완성 된 응용 프로그램에 대한 웹 그리드 결과를 원했고 약간의 코드를 본 후 내 프로젝트에 jqGrid를 사용하기로 결정했습니다. 통합이 빠르며 "DataTable"을 "jqGrid"로 변경하게되어 매우 기쁩니다.하지만 테스트를 마친 후 코드 조각으로 전화를 걸어 xxxxxx.php의 절대 경로를 변경하십시오.

이것은 jqGrid :

chargeSedi function (idx) 
    { 
    // Test with file. Php !work fine! 
    // Var esURL = 'http://xxxxx.com/xxxxxxx.php?IDX =' + idx; 
    // Test with MODx resource !not work! 
    esURL var = '[[~ 97]] & IDX =' + idx; 
    csURL var = '[[~ 96]] & IDX =' + idx; 
    tipodirlist = $ var. cookie ("xxxxxxxx-tipodirlist"); 
    tiposedelist = $ var. cookie ("xxxxxxx-tiposedelist"); 


    $("#sediTable").ready(function() { 
     $("#sediTable").jqGrid({ 
       url:csURL, 
       datatype: "json", 
       height: 250, 
       autowidth:true, 
       colNames:[ 'ID','CODICE', 'NOME','TDIR', 'DIR','COMUNE', 'PROVINCIA','CAP', 'TSEDE','NOTA'], 
       colModel:[ 

{name:'ID',index:'ID', width:25, editable: false}, 
{name:'CODICE',index:'CODICE', width:60, editable: true}, 
{name:'NOME',index:'NOME', width:60, editable: true}, 
{name:'TDIR',index:'TDIR', width:60, editable: true,edittype:"select",editoptions:{value:tipodirlist}},   
{name:'DIR',index:'DIR', width:200, sortable:false,editable: true}, 
{name:'COMUNE',index:'COMUNE', width:170, sortable:false,editable: true}, 
{name:'PROVINCIA',index:'PROVINCIA', width:170, sortable:false,editable: true}, 
{name:'CAP',index:'CAP', width:40, sortable:false,editable: true}, 
{name:'TSEDE',index:'TSEDE', width:90, editable: true,edittype:"select",editoptions:{value:tiposedelist}},  
{name:'NOTA',index:'NOTA', width:170, sortable:false,editable: true,edittype:"textarea", editoptions:{rows:"2",cols:"10"}} ], 

     sortname: 'ID', 
     viewrecords: true, 
     sortorder: "desc", 
     loadonce: true, 
     editurl: esURL , 
     caption: "Sedi" }); 

}); 

]

당신이 세션에서 것처럼 놀랍게도의 MODx는,있는 jqGrid 아약스 호출에 대한 액세스를 거부하지만, 시간 테스트 및 와이어 샤크와 트래픽을보고 난 후에 내가있는 jqGrid가를 보내는 것을 깨달았다 "id"라는 POST 변수를 호출하고 MODx에 GET 변수 "id"를 호출합니다. 이것은 다른 환경에서도 문제없이 가능하지만 MODx는 불가능하며 문제가 있습니다.

내 질문은 jqGrid의 소스를 변경하지 않고 POST 변수 "id"jqGrid의 이름을 어떻게 바꿀 수 있습니까? 동시에

, 당신은 선택의 수입 값이 아닌 인덱스 trame의 POST의

예를 사용자 정의 할 수 있습니다 물어보고 싶은게 :

  {Name: 'TDIR', index: 'TDIR', width: 60, editable: true, EditType: "select" editoptions: {value: tipodirlist}} 

tipodirlist = 1 : 경유 2 : 피아 3 :이를위한 요법

TDIR = 2

CODICE=1&NOME=principale&TDIR=2&DIR=Roma&COMUNE=Torino&PROVINCIA=Torino&CAP=10000&TSEDE=2&NOTA=NO=edit&id=0 

:

TDIR = 서버에서 결과를 필터링하지 않고 피아

CODICE=1&NOME=principale&TDIR=piazza&DIR=Roma&COMUNE=Torino&PROVINCIA=Torino&CAP=10000&TSEDE=2&NOTA=NO=edit&id=0 

.


나는 분명하고 명확하게 설명하기를 바랍니다. 나 자신에게 물었다,이 질문

을 요청하기 전에 팀 "에 StackOverflow는"당신에게 감사

니로 너무 감사드립니다. 하나님 "올렉은"나를 도와 것을

PS.I 희망 :) 내가 모르는 MODx를 사용하지 않는

답변

1

.그럼에도 불구하고 귀하의 문제는 id 매개 변수의 이름을 MODx가 사용하는 id 매개 변수와 충돌하지 않는 이름으로 바꾸는 방법입니다. 내가 올바른 질문을 이해한다면 당신은 그냥 편집 작업에 사용 id 매개 변수의 새 이름을 설정 추가 prmNames 매개 변수를 추가해야

:

prmNames: {id: 'myId'} 

의 예는 기본 id 매개 변수 이름 ({id: "id"})에 이름을 바꿉니다 myId 당신은 서버 부분에 있어야합니다.

+0

예, 사용중인 방법이 Ok! 감사합니다. 감사합니다. niro – niroblock

+0

@niroblock : 환영합니다. Niro! 문제가 해결되면 대답을 "수락"으로 표시 할 수 있습니다 ([여기] (http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work/5235#5235) 참조) 자세한 내용은 [FAQ] (http://meta.stackexchange.com/questions/7931/faq-for-stack-exchange-sites)에서 더 성공적인 정보를 찾을 수 있습니다. stackoverflow.com을 더 잘 사용할 수 있습니다. – Oleg