2016-12-30 70 views
0

我想用ajax從aspx頁面調用action方法調用操作方法按下面的代碼:如何從aspx頁面使用AJAX

var authHeader = window.btoa("Ankita:Ankita"); 
    $.ajax({ 
         type: 'POST', 
         contentType: "application/json; charset=utf-8", 
         url: 'http://localhost:52099/Home', 
         async: false, 
         headers: { Authorization: authHeader }, 
         success: function (response) { 
          alert("hi"); 
         }, 
         error: function(e){ 
          alert(e); 
         } 
        }); 

但它不工作,我犯了錯的是什麼?

此外,我想顯示返回視圖頁作爲aspx中的彈出窗口。我怎樣才能實現它?

謝謝!

+0

'http:// localhost:52099/Home'你只能鏈接控制器名稱。在url中添加動作名稱,例如'http:// localhost:52099/Home/Index /'。檢查您的** action **方法是否具有** HttpGet **屬性,因爲您請求的是POST類型。 –

+0

爲什麼要添加如此多的選項,特別是「async:false」語句?這將使整個頁面無效,直到它完成並且看起來像瀏覽器被凍結給用戶。編程時,您應該遵循KISS(Keep It Simple Stupid)規則。只傳遞你需要傳遞的信息。 –

+0

@DawidWekwejt,我有一個預感,「ASPX」將會是WebForms,除非他們正在搖擺一個非常老的MVC版本。 –

回答

0

在這裏塊:

success: function (response) { 
          alert("hi"); 
         }, 

的響應是返回的視圖中,所以你想要做的是找到你彈出的身體。我假設它是一個引導模式,並用它替換內部的html。然後彈出來。

success: function (response) { 
          $("#popupdivmodal").find('div.body').html('').html(response); 
         },