ajaxSend(handler)


version 1.0 以降

解説

Ajaxリクエストが送信される前に実行するコールバック関数を登録します。

globalオプションがtrueの場合に、ローカルAjaxイベントのbeforeSendコールバック関数が実行された後に実行されます。 共通の通信前の処理を登録する場合に使用します。

ローカルAjaxイベントのbeforeSendコールバック関数がfalseを返した場合は、ajaxSend(handler)で登録したコールバック関数は実行されません。

引数

  • callback : リクエストが送信される前に実行されるコールバック関数。
    このコールバック関数には 3つの引数が渡されます。
    引数 説明
    event イベントオブジェクト
    参照:イベントオブジェクト
    XMLHttpRequest XMLHttpRequestオブジェクト
    options Ajax通信オプション

戻り値

  • jQueryオブジェクト

例1:リクエスト送信前に、送信するデータを表示します。

$(function(){ // DOM準備完了
    // リクエスト送信前に実行するコールバック関数を登録
    $("#test_result").ajaxSend(function(event, XMLHttpRequest, options){
        $(this)
            .append($("<p/>")
                .append("----- ajaxSend: リクエストを送信します -----")
                .append("<br/>")
                .append("data: " + options.data)   // データを表示
            );
    });
});

test_post.php
<p>このデータは、サーバ上にあります。</p>
<ul>
    <li>key1: <?= htmlspecialchars($_POST['key1'], ENT_QUOTES, 'UTF-8'); ?></li>
    <li>key2: <?= htmlspecialchars($_POST['key2'], ENT_QUOTES, 'UTF-8'); ?></li>
</ul>

$.post(
    "test_post.php",                      // リクエストURL
    {"key1": "value1", "key2": "value2"}, // データ
    function(data, status) {
        // 通信成功時にデータを表示
        $("#test_result")
            .append($("<p/>")
                .append("----- 通信成功 -----").append("<br/>")
                .append("status: ").append(status).append("<br/>")
                .append("data: ").append(data)
            );
    },
    "html"                                 // 応答データ形式
);