「$.ajax」を使用した他のデータ交換と同様に、MODx 内で jqGrid を有効にしようとしています。呼び出しを URL からパスワードで保護されたリソースに移動し、そこから PHP でコードのスニペットを呼び出します。 、ajax呼び出しが保証されています
これは、チャンク $.ajax の一例です。
$.ajax ({
url :'[[~94]]',
type: 'post',
async: false,
success: function(rsp) {
$.Cookie("xxxxxx-tipodirlist", rsp);
}
});
*[[~94]] は保護されたリソースであり、スニペット呼び出し [[!SnpBridgedata_blabla]] 内にあります
システムは Web アプリケーション全体で完全に機能し、データを安全かつ確実に送受信します。
現在、顧客から、優れたグリッドで Web の結果が必要な完成したアプリケーションを求められました。コードを少し見てから、自分のプロジェクトに jqGrid を使用することにしました。統合は迅速で、「DataTable」を「jqGrid」に変更できてとても満足していますが、テストが終了したら、snippet の呼び出しで絶対パスを 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 の ajax 呼び出しへのアクセスを拒否しており、まるでセッションを行っていないかのように見えますが、何時間もテストして Wireshark でトラフィックを監視した後、jqGrid が「id」という POST 変数を送信し、MODx を GET 変数として呼び出していることに気付きました」 id」。これは他の環境では問題なく可能ですが、MODx では不可能であり、問題があります。
私の質問は、jqGrid のソースを変更せずに、POST 変数「id」jqGrid の名前を変更する方法です。
同時に質問したいのですが、インデックスではなく値を選択してインポートをカスタマイズできます
トラム POST の例:
{Name: 'TDIR', index: 'TDIR', width: 60, editable: true, EditType: "select" editoptions: {value: tipodirlist}}
tipodirlist = 1:経由;2:広場;3:ect
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.神「オレグ」が私を助けてくれることを願っています:)