2016-06-14 6 views
0

$.ajax()リクエストで使用されているdataオブジェクトにはどのようにアクセスできますか?成功関数AJAXリクエスト内の "データ"オブジェクトにアクセス

$.ajax({ 
    url: "post.php", 
    type:'POST', 
    data:{ 
     el1: $('#el1').val(), 
     ... 
     el72: $('#el72').val() 
    }, 
    success: function(res,status){ 
     // 
    } 
}); 
+0

AJAXコールの前に変数にデータを保存するだけでなく、成功コールバックでその変数を参照する理由がありますか? –

+1

'$ _POST ['el1']' – Rayon

+0

^を使用すると、サーバーがPHPで書かれている場合にサーバー側のデータが得られます。サーバー上のデータを取得しようとしているのか、それとも成功のコールバックでアクセスしようとしていますか? –

答えて

4

あなたは限り、あなたは、機能を結合し、矢印機能を使用するか、またはコンテキストオプションを使用していなかったとして、thisを使用して、成功コールバック内から$アヤックスに渡され処理されたオプションにアクセスすることができます。

console.log(this.data); // for POST 
console.log(this.url); // for GET, but you'll have to parse out the url portion 

あなたはそれはそれはサーバーに送信される方法ですので、それは今のパラメータ化された文字列ではなくオブジェクトにだといえわかります。バックオブジェクトに変換する方法についてはこちらをご覧ください:Convert URL parameters to a JavaScript object


私はちょうど変数を使用します。

1

ajax()を呼び出す前に変数を作成してください。

var formData = { 
    el1: $('#el1').val(), 
    ... 
    el72: $('#el72').val() 
}; 

$.ajax({ 
    url: "post.php", 
    type:'POST', 
    data: formData, 
    success: function(res,status){ 
     // do something with formData 
    } 
}); 
+0

ありがとうございます。しかし、私はajaxの前に変数を使用せずに答えを探していました。しかし、アップアップ。 – yuriy636

関連する問題