1

Ajaxを使用してボタンがクリックされたかどうかを確認するにはどうすればよいですか?クリックするとAjaxリクエスト(すでに実行済み)を送信し、ボタンがクリックされた場合に通知されるボタンが必要です。別のソースファイルから押されたかどうかを確認する方法と、Ajaxリクエストで送信するヘッダーがわかりません。私のコードは次のとおりです(私のフォームに「button」という名前のボタンがあると仮定します。

<script type = "text/javascript">
function checkVote()
{
    request = new ajaxRequest();
    request.open("POST", "checkButton.php", true);
    request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    request.send(params);
}

function ajaxRequest()
{
    try
    {
        request = new XMLHttpRequest();
    }
    catch(e1)
    {
        try
        {
            request = new ActiveXObject('Msxml2.XMLHTTP');
        }
        catch(e2)
        {
            try
            {
                request = new ActiveXObject('Microsoft.XMLHTTP');
            }
            catch(e3)
            {
                request = false;
            }
        }                               
    }
    return request;
}
</script>
4

1 に答える 1

3

人気のあるJavaScriptライブラリ/フレームワークはすべて、のHTTP_X_REQUESTED_WITH値を送信しXMLHttpRequestて、リクエストがAjax経由で行われたことをスクリプトに通知します。したがって、jQuery、Prototypeなどを使用する場合、これは自動的に処理されます(そして、JavaScriptのコーディング作業が簡単になります)。そうでない場合は、受け入れられている規則に従うように自分で設定できます。

if ($_SERVER['HTTP_X_REQUESTED_WITH'] === 'XMLHttpRequest') {
  // Ajax request
}
于 2012-06-29T01:33:13.657 に答える