나는 관리자 페이지를 만들고 있는데, 사용자가 거기에있을 수 없다면 몇 초 후에 페이지를 리다이렉션해야한다. 관리자가 로그인 할 때 생성 된 세션이 있어야하며 jquery를 사용하여 세션이 있는지 확인하려고합니다. 여기 jquery 또는 ajax와 함께 asp.net 함수 호출하기
는 C# 코드입니다 : 그래서 basiclyprotected 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;
}
내가 어떻게 든 세션이 존재하는지 여부를 확인하기 위해 checkIfAllowed() 함수를 호출하는 jQuery를 사용할 수있는 생각,하지만 난 잘 모릅니다.
이 내가 무엇을 가지고 : 당신이 말해주십시오 일부 솔루션이있는 경우
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을 사용하여 페이지를 리디렉션 할 수도 있지만 처음에는 작동하지 않았습니다. #inner의 HTML이 asp.net에 pageLoad에 변화 때문에 가 나는 또한, JQuery와에있는 경우() 문에
$("#inner").html != null && $("#inner").html != ""
를 작성했습니다.
감사 =]
JQuery에서 C# 페이지 함수를 직접 호출 할 수 없습니다.HTTP, 즉 웹 서비스 등에서 액세스 할 수있는 시스템에 메소드를 공개해야합니다. 그런 다음 $ .ajax 메소드를 사용하여 Jquery에서 HTTP 메소드를 호출 할 수 있습니다. – Liam
인증되지 않은 경우 관리자가 아닌 사용자는 관리자 페이지로 들어가서는 안됩니다. 그가 페이지에 들어가기 전에 사용자 권한을 확인하십시오. –