0

クロスドメイン投稿をしたいのですが、JSONP を使用する必要があるようです。私の投稿は実際には機能しますが、Firefox コンソールでエラーが発生します。PHP がデータを正しく受信しているのに、スクリプトが「失敗」と言うのはなぜですか?

function post_data(data1, data2, data3) {
    $.ajax({
        type: 'POST',
        dataType: 'jsonp', 
        data: "data1=" + data1 + "&data2=" + data2 + "&data3=" + data3, 
        url: 'http://www.thedomainname.com/recievedata.php',
        success: function(data){
            alert('succes!!');
        },
        error: function(){
            alert('fail!');
        }
    });
    return false;
};

エラー関数を起動します。この場合、「fail!」というアラートが表示されます。

4

1 に答える 1

0

jsonp リクエストが成功した場合にカスタム関数を設定するために、次のパラメーター ( jsonp、 ) を指定してみてください。jsonpcallback

function jsonpCallback(response){
    console.log(response);
}

function post_data(data1, data2, data3) {
    $.ajax({
        type: 'POST',
        dataType: 'jsonp', 
        data: "data1=" + data1 + "&data2=" + data2 + "&data3=" + data3, 
        url: 'http://www.thedomainname.com/recievedata.php',
        jsonp: false,
        jsonpCallback: 'jsonpCallback',
        error: function(){
            alert('fail!');
        }
    });
    return false;
};

ここを見て、検索してくださいjsonp: http://api.jquery.com/jQuery.ajax/

于 2012-12-12T14:00:04.540 に答える