我用用户控件做成登录,在一个Mail.aspx页面中引用这个用户控件,当登录成功时跳转到Main.aspx页面,并且在上面显示“欢迎您:某某”,请教各位大侠,帮帮忙????

解决方案 »

  1.   

    如果只是一小块区域的话,可以考虑用ajax,不管有没有引用用户控件都只在当前页面执行
    //登录表单提交
    function SubmitFrm(){
        $.ajax({
            type:"POST",
            url:"Ajax/index.ashx",
            data:{type:"login",nm:$("#txtUserName").val(),pwd:$("#txtPwd").val()
            dataType:"text",
            beforeSend:function(XMLHttpRequest){ return CheckFrm();},
            success:function(data){
                if(data=="true"){
                    //返回true,切换界面
                    login_home_html=$("#login_home").html();
                    $("#login_home").html("<div class=\"b_title_box\">注销</div><div id=\"lgAccuess\" class=\"b_box_bottom\">登录成功!!!  <a href='javascript:ZhuXiao()'>注销</a></div>");
                }else{
                    alert(data);
                }
            }
        });
    }
      

  2.   

    把登录信息写到Cookie里面,读取Cookie就可以; 
      

  3.   

    <table border="1" class="style1">
        <tr>
            <% if (Session["LoginName"] == null)
               {
            %>
            <td class="style2">
                用户名:<asp:TextBox ID="txtLoginName" runat="server"></asp:TextBox>&nbsp;&nbsp;<asp:RequiredFieldValidator ID="rfvLoginName" runat="server" ControlToValidate="txtLoginName"
                            Display="None" ErrorMessage="用户名不能为空"></asp:RequiredFieldValidator>&nbsp;&nbsp;&nbsp;
                密码:<asp:TextBox ID="txtLoginPwd" runat="server" TextMode="Password"></asp:TextBox>&nbsp;&nbsp;<asp:RequiredFieldValidator ID="rfvLoginPwd" runat="server" ControlToValidate="txtLoginPwd"
                            Display="None" ErrorMessage="密码不能为空"></asp:RequiredFieldValidator>&nbsp;
                <asp:CheckBox ID="chkTrue" runat="server" Text="记住我" />
                &nbsp;&nbsp;&nbsp;
                <asp:Button ID="btnOk" runat="server" Text="登录" Height="27px" OnClick="btnOk_Click"
                    Style="background-color: #FF0000" Width="46px" />
                &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
                <asp:LinkButton ID="lnkbtnReg" runat="server">免费注册</asp:LinkButton>|
                <asp:LinkButton ID="lnkbtnForgetPwd" runat="server">忘记密码?</asp:LinkButton>
            </td>
            <%  } %>
            <% else
                { %>
            <td class="style2">
                <asp:Label ID="lblWelcomes" runat="server"></asp:Label> <asp:LinkButton ID="lnkbtnHuiYuan" runat="server">会员中心</asp:LinkButton>&nbsp;&nbsp;
                <asp:LinkButton ID="lnkbtnTuiChu" runat="server">退出</asp:LinkButton>
            </td>
            <%} %>
        </tr>
    </table>
    我现在是lblWelcomes已经取到值了,但是就是不显示在第二个TD中,但是这个TD中的其它二个LinkBtton却显示出来了
      

  4.   

    LZ 问题是出在页面用IF去控制,因为这写有的时候是没有效果的!
    你可以把两个td加上,runat="server" ,然后。cs 中控制他们的Visible 属性就可以了!
      

  5.   

    这种应用功能借助于AJAX比较好
      

  6.   

    怎么感觉这是放在一个页面中的 啊。页面还有点jsp的味道了。
    如果你刚开始的问题,在Mail.aspx页面中输入用户名和密码,判断成功后把用户名保存到session或cookie中,或者直接页面传值,到Main.aspx中接收下不就行了。
      

  7.   

    我也要在Cookie的值保存并显示在那个用户控件的地方啊,只不过是把原来的文本框变成了“欢迎您:某某”了,这还是要操控用户控件的
      

  8.   

    引用 6 楼 yankj1988 的回复:
    <table border="1" class="style1">
    <tr>
    <% if (Session["LoginName"] == null)
    {
    %>
    <td class="style2">
    用户名:<asp:TextBox ID="txtLoginName" runat="server"></asp:TextBox>&amp;nbsp;&amp;nb……怎么感觉这是放在一个页面中的 啊。页面还有点jsp的味道了。
    如果你刚开始的问题,在Mail.aspx页面中输入用户名和密码,判断成功后把用户名保存到session或cookie中,或者直接页面传值,到Main.aspx中接收下不就行了。
    ------------------------------------------------------
    方便解读,也有些是个人习惯!