2017-11-11 63 views
-2

AJAX操作を実行しようとしています。呼び出しが正常に動作しているが、私が持っている問題は、応答として空の文字列を取得しているということです。コンソールにエラーはありません。私が得るのは空の文字列です。 dataTypeをJSONに変更しても、私は同じ応答を得ます。jQuery AJAX POSTメソッドが動作しない

JavaScriptのコード:

$.ajax({ 
    url: "data/saveCart.php", 
    method: "POST", 
    data: { 
    cartItem:item 
    }, 
    dataType: "text", 
    success: function(data){ 
    console.log(data); 
    } 
}); 

PHPコードは:それはないstringifyingあなたのデータによって引き起こされたよう

if(isset($_POST['cartItem'])) { 
    echo "AJAX successful"; 
} else { 
    echo "AJAX failed"; 
} 
+0

データオブジェクトを文字列化してみてください。var obj = JSON.stringify();そのAjaxコールのデータとして設定します – r3dst0rm

+1

if/elseは何かをエコーし​​ます。だから、質問は、おそらく、アヤックスコールは右のPHPを打つされていないですか?または、貼り付けたPHPコードは、 'saveCart.php'とまったく同じではありませんか?あなたのネットワークタブは、ajaxがページをリクエストしたときに表示されます(PHPの名前は何ですか?どのヘッダ/レスポンスが送信/取得しますか)。 – IncredibleHat

+0

答えをご覧ください。 –

答えて

0

に思えます。

var item = { 
    toothbrush: { 
    price: 1 
    } 
}; 

$.ajax({ 
    url: "data/saveCart.php", 
    method: "POST", 
    data: { 
    cartItem: JSON.stringify(item) 
    }, 
    dataType: "text", 
    success: function(data){ 
    console.log(data); 
    } 
}); 
+0

私のデータを 'stringifying'しようとしましたが、最終的に' AJAX failed 'をコンソールに出力しました( 'saveCart.php ')なぜ' $ _POST ['cartItem'] 'が設定されていないのか? –

+0

要求はネットワーキングタブでエラーを投げますか? –

+0

いいえ、間違いはありません。 –

関連する問題