0
我有一個asp.net應用程序,我想顯示登錄彈出如果用戶未經過身份驗證,如果用戶身份驗證,然後memberarea彈出相同的頁面上。asp.net MVC ajax方法沒有按正確的順序調用
我在151API視圖這個控制器的操作方法
[ActionName("151LoginAPI")]
public ActionResult NewCallRecording(string ID, string PSSWD, string ACCID, string PASSWDINT)
{
....
....
...
return view();
}
我這樣做在的document.ready功能
$.ajax({
type: "POST",
dataType: "json",
url: "/recording/verifyUser",
data: {
ID: $("#ID").val(),
PSSWD: $("#PSSWD").val(),
ACCID: $("#ACCID").val(),
PASSWDINT: $("#PASSWDINT").val()
},
success: function (data) {
if (data == "success") {
jQuery('#dialog-AddCallRecording').dialog({ closeOnEscape: false });
$(".ui-dialog-titlebar").hide();
$("#dialog-AddCallRecording").dialog({ dialogClass: 'transparent', modal: true });
$("#dialog-AddCallRecording").dialog("open");
}
else {
jQuery("#dialog-user-login").dialog('option', 'position', 'center');
jQuery("#dialog-user-login").dialog("open");
}
}
});
我已經定義verifyuser並且認證和顯示適當的彈出窗口。
它工作正常,但問題是當我設置斷點。我看到NewCallRecording始終被擊中。然後驗證用戶被擊中。我想要使驗證用戶首先被檢查,然後NewCallRecording actionmethod在用戶打開/ NewCallRecording頁面時被點擊
請告訴我如何做到這一點。
我應該在這種情況下刪除ajax調用嗎?另外,如果我使NewCallRecording actionmethod只是GEt操作的虛擬操作方法,併爲POST創建另一個方法?但我需要我認爲...我真的很困惑 – DotnetSparrow 2013-02-28 07:38:07
如果您想要在頁面加載之後驗證用戶的其他號召性用語,則Ajax非常有用。你可以做虛擬動作調用,做ajax驗證,然後調用實際動作,但是這看起來有些複雜。考慮用一個屬性來修飾你的動作,該屬性可以是一個動作過濾器,在動作執行之前驗證用戶。 – 2013-02-28 07:41:13