我是一個管理頁面,我需要在幾秒鐘後重定向頁面,如果用戶不允許在那裏。應該有一個會話在管理員進入時創建,我想用jquery來檢查會話是否存在。使用jquery或ajax調用asp.net函數
這裏是C#代碼:
protected void Page_Load(object sender, EventArgs e)
{
if ((string)Session["admin"] == null)
{
mainF.InnerHtml = "<div id='inner' style='margin-left:370px; margin-top:80px;font: 0.92em arial,sans-serif;word-spacing: 2px;font-weight: bold;'>Your Are Not Supposed To Be Here.</div>";
}
}
public bool checkIfAllowed()
{
bool isIt = false;
if ((string)Session["admin"] != null && (string)Session["admin"] != "")
{
isIt = true;
}
return isIt;
}
所以basicly我想,我可以以某種方式使用jQuery調用checkIfAllowed()函數來檢查會話是否存在,但我不知道怎麼辦。
這是我有:
if (!checkIfAllowed() /*which of course doesn't work*/) {
var inter = setInterval(function() {
window.location.replace("http://www.google.com");
}, 3000);
}
else {
clearInterval(inter);
}
有可能是其他方法可以做到這一點,如果你有一個一些解決請告訴我。 我想我也可以用asp.net重定向頁面,但第一次不工作。 我也嘗試在jQuery的的if()語句寫
$("#inner").html != null && $("#inner").html != ""
,因爲#inner HTML是在頁面加載在asp.net改變。
感謝=]
您不能直接從JQuery調用C#頁面函數。您將需要在可從HTTP訪問的系統上公開您的方法,即Web服務等。然後,您可以使用$ .ajax方法從Jquery調用HTTP方法。 – Liam
如果未通過身份驗證,則不應允許非管理員用戶進入管理頁面。在他進入頁面之前檢查用戶權限。 –