jQuery.post(url, [data], [handler], [dataType])


version 1.0 以降

解説

HTTPリクエスト(POSTメソッド)を使用してデータを取得します。

jQuery.get(url, [data], [handler], [dataType]) のラッパメソッドです。

指定したコールバック関数は、通信が成功した場合に実行されます。 通信エラー時、通信完了時のハンドリングを行うには、jQuery.ajax(settings) を使用してください。

引数

  • url : リクエスト先のURL。
  • [data] : サーバに送信するパラメータ。キーと値のペア(ハッシュ)。(オプション)
  • [callback] : 通信が成功した場合に実行されるコールバック関数。(オプション)
    jQuery.ajax(settings)successオプションに指定するコールバック関数と同等です。このコールバック関数には 2つの引数が渡されます。
    引数 説明
    data dataTypeに応じて評価された応答データ
    status リクエスト結果を表す文字列。
    参照:jQuery.ajax(settings)#status
  • [dataType] : 期待するサーバの応答データの形式を指定します。
    参照:jQuery.ajax(settings)#dataType

戻り値

  • XMLHttpRequestオブジェクト

例1:サーバ上にある test_post.php に、データ{"key1":"value1","key2":"value2"}を送信し、取得したデータを表示します。

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("status:").append(status).append("<br/>")
            .append("data:").append(data).append("<br/>");
    },
    "html"                                 // 応答データ形式
);