2017-04-14 20 views
2

ajax関数を書いて、フォームを送信する前に確認メールを表示したいと思っています。私の状態をどうやって追加すればいいですか?以下は私のコードです。ajaxリクエストを送信する前に確認メッセージを表示

$.ajax({ 
         url: "UBRDashboard.aspx/GetDllValue", 
         dataType: "json", 
         type: "POST", 
         contentType: 'application/json; charset=utf-8', 
         data: JSON.stringify({ ddlOduModel: ddlOduModel, ddlAntModel: ddlAntModel, ddlOMTModel: ddlOMTModel, ddlSapID: ddlSapID, ddlVendorName: ddlVendorName, strReqID: r.d, ddlSapDescVal: ddlSapDescVal, SITE_ADD: SITE_ADD, LATITUDE: LATITUDE, LONGITUDE: LONGITUDE, ddlEQP_SEQ: ddlEQP_SEQ, txtLinkID: txtLinkID, RJ_QUANTITY: RJ_QUANTITY, USER_NAME: USER_NAME, CREATED_DATE: CREATED_DATE, LOCATIONTYPE: LOCATIONTYPE, TOWERTYPE: TOWERTYPE }), 
         async: true, 
         processData: false, 
         cache: false, 
         success: function (r) { 
          if (r.d == "OK") { 
           alert('Record Saved successfully'); 
           window.location.href = "UBRDashboard.aspx"; 
          } 
         }, 
         error: function (xhr) { 
          alert('Error while selecting list..!!'); 
          window.location.href = "ErrorPage.aspx"; 
         } 
        }) 
       }, 
       error: function (xhr) { 
        alert('Error while selecting list..!!'); 
        window.location.href = "ErrorPage.aspx"; 
       } 

答えて

3

に確認してください。それは 要求をキャンセルしますbeforeSend機能で偽 sent.Returningがある前に

はbeforeSendは事前リクエストコールバック関数です。

beforeSend:function(){ 
    return confirm("Are you sure?"); 
}, 

AJAX

$.ajax({ 
     url: "UBRDashboard.aspx/GetDllValue", 
     dataType: "json", 
     type: "POST", 
     contentType: 'application/json; charset=utf-8', 
     data: JSON.stringify({ ddlOduModel: ddlOduModel, ddlAntModel: ddlAntModel, ddlOMTModel: ddlOMTModel, ddlSapID: ddlSapID, ddlVendorName: ddlVendorName, strReqID: r.d, ddlSapDescVal: ddlSapDescVal, SITE_ADD: SITE_ADD, LATITUDE: LATITUDE, LONGITUDE: LONGITUDE, ddlEQP_SEQ: ddlEQP_SEQ, txtLinkID: txtLinkID, RJ_QUANTITY: RJ_QUANTITY, USER_NAME: USER_NAME, CREATED_DATE: CREATED_DATE, LOCATIONTYPE: LOCATIONTYPE, TOWERTYPE: TOWERTYPE }), 
     async: true, 
     processData: false, 
     cache: false, 
     beforeSend:function(){ 
     return confirm("Are you sure?"); 
     }, 
     success: function (r) { 
     if (r.d == "OK") { 
     alert('Record Saved successfully'); 
     window.location.href = "UBRDashboard.aspx"; 
     }, 
     error: function (xhr) { 
      alert('Error while selecting list..!!'); 
      window.location.href = "ErrorPage.aspx"; 
     } 
}); 
+1

それはアヤックスによって完全に処理されます.. !!魅力のように働く – BNN

0

のような機能にあなたのAJAXを書く:ユーザーの確認は、その後(saveを呼び出す場合には、確認の機能を記述した後

function save(){ 
    // something in here 
} 

)機能

0

は、たぶんこのexempleは何が必要でしょうか?

var r = confirm("Press a button!"); 
if (r == true) { 
    // Make your ajax call here 
} else { 
    // He refused the confirmation 
} 

ajaxコールの前に確認してください。

0
if (confirm("Do you want to Submit?")) { 
    // If you pressed OK!"; 

$.ajax({ 
    url: "UBRDashboard.aspx/GetDllValue", 
    dataType: "json", 
    type: "POST", 
    contentType: 'application/json; charset=utf-8', 
    data: JSON.stringify({ ddlOduModel: ddlOduModel, ddlAntModel: ddlAntModel, ddlOMTModel: ddlOMTModel, ddlSapID: ddlSapID, ddlVendorName: ddlVendorName, strReqID: r.d, ddlSapDescVal: ddlSapDescVal, SITE_ADD: SITE_ADD, LATITUDE: LATITUDE, LONGITUDE: LONGITUDE, ddlEQP_SEQ: ddlEQP_SEQ, txtLinkID: txtLinkID, RJ_QUANTITY: RJ_QUANTITY, USER_NAME: USER_NAME, CREATED_DATE: CREATED_DATE, LOCATIONTYPE: LOCATIONTYPE, TOWERTYPE: TOWERTYPE }), 
    async: true, 
    processData: false, 
    cache: false, 
    beforeSend:function(){ 
    return confirm("Are you sure?"); 
    }, 
    success: function (r) { 
    if (r.d == "OK") { 
    alert('Record Saved successfully'); 
    window.location.href = "UBRDashboard.aspx"; 
    }, 
    error: function (xhr) { 
     alert('Error while selecting list..!!'); 
     window.location.href = "ErrorPage.aspx"; 
    } 
}); 

} else { 
    // If you pressed Cancel!"; 

} 

ソリューションはbeforeSend AJAXプロパティを使用することであるwindow.confirm

+0

ので、AJAX呼び出しの前に、私は確認部分を記述する必要が? – BNN

+0

はい、これで他の場合はajax呼び出しをラップする必要があります。 – Tuhin

0

使用AJAX beforeSendコールバック関数。

beforeSend: function() { 
        if(confirm("Are you sure?")){ 
         // do something 
        } else { 
         // stop the ajax call 
         return false; 
        } 
       }, 

参照ドキュメントのAjax http://api.jquery.com/jquery.ajax/

関連する問題