登录后才能访问页面--解决方案(一)

来源:互联网 发布:淘宝爽快官方旗舰店 编辑:程序博客网 时间:2024/05/17 09:29

特征:登录之后,一般都会保存登录数据到Session中

方案一:js直接判断Session是否存在

js是没有办法获取SESSION的, 因为它只是客户端的脚本,SESSION是服务端的.如果想要获取SESSION 而不刷新页面就需要AJAX, 用JS  使用AJAX 获取服务端的SESSION

方案二:js通过隐藏表单判断Session是否存在

此方案是由方案一想出的,首先页面加载时,Session的值保存到隐藏表单中,然后通过JS访问该表单:以下是其主要代码

        <script type="text/javascript" lanuage="javascript">                                                                                                           function sessionexit()        {            var session_exit=document.getElementById("session_exit");            var showorder=document.getElementById("showorder");            var cartpage=document.getElementById("cartpage");            if(session_exit.value=="")            {                showorder.href="#";                cartpage.href="#";                alert("您尚未登录,请登录……");            }        }    </script>


 

<td>                        <a href="ShopCartPage.aspx" onclick="sessionexit()" id="cartpage">                            <img name="top_r1_c2" src="Image/img_shopcart.jpg" width="59" height="26" border="0"                                id="top_r1_c2" alt="" /></a>                    </td>                    <td>                        <img name="top_r1_c3" src="Image/img_mylnfo.jpg" width="66" height="26" border="0"                            id="top_r1_c3" alt="" />                    </td>                    <td>                        <a href="ShowOrder.aspx" id="showorder" onclick="sessionexit()"><img name="top_r1_c4" src="Image/img_ordersearch.jpg" width="73" height="26" border="0"                            id="top_r1_c4" alt="" /></a>                    </td>

最后,在需要登录才能访问的页面的加载函数中加上

if (!IsPostBack)        {            //此处主要是为了在该页面内用户退出作出的动作            if (Session["User"] == null)            {                Response.Write("<meta http-equiv='refresh' content='1;url=Default.aspx' />");            }        }



 

原创粉丝点击