1

こんにちは私は次のJsコードを持っています。

問題は、フォームが2回送信されていることですが、送信されたフォームの1つのインスタンスのみが、リクエストを表示しているサファリインスペクターに表示されています。

そして、私がチェックするためにそれをテストしたので、それは間違いなくサーバー側の要求の問題ではありません。だからそれは間違いなくクライアントサイドのものです。

$('#replyForm').submit(function(e){

    e.preventDefault();

    var userID = $('#replyForm #userID').val();
    var content = $('#replyForm #content').val();

    if(content != '')
    {

        var ajaxURL = BASE_URL + 'ajax/sendMessage/';

        $.ajax({
            type: 'POST',
            url: ajaxURL,
            dataType: 'json',
            data: { 
                userID: userID,
                content: content
            },
            success: function(){

                updateConversation();

            }
        });

        $('#replyForm #content').val('');

    }
    else
    {

        alert('Cannot send an empty message');

    }

    return false;

});
4

1 に答える 1

1

あらゆる角度から多くのテストを行った後、これを行うのはサーバー側のコードであることがわかりました。リクエストを実行していません。

私はcurlを使用してAPIへのリクエストを作成していました。そして、curl_execを2回実行しました。1回は成功を確認し、もう1回は呼び出しの結果を取得するためです。

これが重複の原因でした。

これが同様の問題を抱えている人に役立つことを願っています。

于 2013-01-22T12:28:08.093 に答える