jqueryのではAjaxの送信要求が完了し、beforesendの使い方

BeforeSend主なユーザーは、以下の方法があります:

リクエストAJAXを送信する前にヘッダを設定するための要求

  すなわちフロントとして、私たちは次のように行うことができ、データのリクエストヘッダを送信する前に設定する場合:

beforeSend:関数(リクエスト){ 
     request.setRequestHeader( "BBG-キー"、 "ab9ef204-3253-49d4-b229-3cc2383480a6" )。
}、

データの重複を防ぎます

  ユーザーが時々送信ボタンをクリックしたが、フォームを送信しますが、原因ネットワーク上の理由から、データを返しませんでした一時的な状況があるだろうときに、ユーザーが成功をクリックしないと思うだろう、それは---重複データの数を生成するためのデータベースが発生しますダーティデータは、私たちは完全に回復した後、ボタンの機能を提出beforeSendが無効に追加することができ、次のとおりです。

// スプーラにフォームデータを送信する
の$アヤックス({ 
    :タイプの "POST" 
    データ:studentInfo、
    contentTypeの: "アプリケーション/ JSON" 
    URL: "/ホーム/送信" 
    beforeSend:機能(){
         // 無効ボタン重複防止の提出 
        $( "#送信")のattr({[無効]: "Disabled"に}); 
    }、
    成功:機能(データ){
         IF(データは== "成功" ){
             // クリア入力ボックス
            ClearBox(); 
        } 
    }、
    コンプリート:関数(){
        $(。 "#submit")removeAttr( "無効" )。
    }、
    エラー:関数(データ){ 
        console.info( "エラー:" + data.responseText)。
    } 
})。

アナログトースト効果

  データリストをロードするためのサーバーへの負荷AJAXリクエストを要求されたら(「ロード、...お待ちください」)

$アヤックス({ 
    タイプ: "ポスト" 
    contentTypeの: "アプリケーション/ JSON" 
    URL: "/ホーム/ GetListの" 
    beforeSend:機能(){ 
        $( "ロード" ).SHOW(); 
    }、
    成功:機能(データ){
         場合(データ== "成功" ){
             // ... 
        } 
    }、
    完全な:関数(){ 
        $( "ロード" ).hide(); 
    }、
    エラー:関数(データ){
        console.info("エラー:" + data.responseText)。
    } 
})。

おすすめ

転載: www.cnblogs.com/webmc/p/11403734.html