问题描述
.net判断用户未登录,弹出提示“未登录,请登录”,但不加载网页要求是必须弹出提示框,提示用户需要登录,但不加载网页现在是提示了登录,就会加载网页,这样别人就能看到网页的内容用Response.End();提示框就不会弹出请高手指定哈
解决方案
解决方案二:
Page.ClientScript.RegisterStartupScript(this.GetType(),"out","<script>alert('登录后再访问!');window.location.href='/index.aspx';</script>");
解决方案三:
来人指导哈
解决方案四:
来人指导哈
解决方案五:
没有怎么看懂你的要求
解决方案六:
引用1楼lzyyouger的回复:
Page.ClientScript.RegisterStartupScript(this.GetType(),"out","<script>alert('登录后再访问!');window.location.href='/index.aspx';</script>");
你自己不写了吗,没登录的话,弹出提示框并跳转到首页啊。你改成没登录就跳转到登录页面就可以啊,你想要闹那样啊?
解决方案七:
Page.ClientScript.RegisterStartupScript(this.GetType(),"out","<script>alert('登录后再访问!');window.location.href='Login.aspx';</script>");我不知道你的登录页叫什么。。。反正就是修改你的window.location.href='Login.aspx';
解决方案八:
1,服务端新建立个ashx文件,用于判断是否登录。publicclassAuth:IHttpHandler{publicvoidProcessRequest(HttpContextcontext){context.Response.ContentType="text/plain";if(是否已登录逻辑){context.Response.Write("true");}else{context.Response.Write("false");}}publicboolIsReusable{get{returntrue;}}}
2,前台用JS写一个跳转函数,所有页面跳转都调用这个函数。<scripttype="text/javascript">functionRedirect(url){$.ajax({type:"GET",url:"auth.ashx",success:function(data){if(data=="true"){window.location.href=url;}else{alert("请先登录!");}},error:function(data,status,e){alert("身份认证时发生错误。");}});}</script>
页面中的跳转示例:<ul><li><ahref="javascript:Redirect('http://bbs.csdn.net');">CSDN</a></li></ul>
aspx文件中记得加载JQ.话说WebForm这么干还真有点别扭。
解决方案九:
你的做法有点古怪,弹提示但不加载(不显示)网页的确应该用Response.End();,只不过是这样用if(用户未登陆){Response.Write("<script>alert('登录后再访问!');window.location.href='/Login.aspx';</script>");Response.End();}不过现在基本都是类似LS那样用Ajax,体验更好