asp.net+mvc+easyui+sqlite 简单用户系统学习之旅(四)—— session传递登录人信息显示+用户注销

前面的学习,已经做好了简单的登录和主页,涉及了三层软件架构,mvc,easyui的layout、tree、tab、window,sqlite,动软代码自动生成。

下面完善一下登录跳转主页后,在south-layout底部显示登录人,与登录用户名保持一致;再做一个注销按钮,利用到easyui的linkbutton/menubutton。

1. 在后台判断是否登录时,Account控制器中定义了一个session,将登录人的信息保存在session["user"]中,

在(Home)Index中添加代码,c#代码用<% %>包围

<% UserManager.Model.UserDB user = Session["user"] as UserManager.Model.UserDB; %>

将底部的登录人的代码改为:

<div data-options="region:'south',border:false" style="height:20px;background:#ccc;padding:1px">当前登录人:<%=user.Name %></div>

显示效果如下:

2. 在north-layout即顶部添加easyui的linkbutton,添加注销功能

打开chm帮助文档,或demo

为(Home)Index添加代码:

<div data-options="region:'north',border:false" style="height:61px;background:#0660bb;">
        <img src="/Content/Images/logo.png" style="float:left"/>
        <div style="padding:10px;float:right;text-align:center">
            <a href="#" class="easyui-linkbutton" data-options="plain:true">Home</a>
            <a href="#" class="easyui-linkbutton" data-options="plain:true,iconCls:'icon-edit'">注销</a>
            <a href="#" class="easyui-menubutton" data-options="menu:'#mm2',iconCls:'icon-help'">Help</a>
            <a href="#" class="easyui-menubutton" data-options="menu:'#mm3'">About</a>
        </div>
    </div>

显示结果如下:

接下来为注销添加跳转功能

3. 在注销前,提示用户是否确认注销,利用easyui的messager

且确认注销前要销毁已创建的session

为(Home)Index的注销linkbutton添加事件:

<a href="#" class="easyui-linkbutton" data-options="plain:true,iconCls:'icon-edit'" onclick="LogoOff()">注销</a>

LogoOff()函数写在之前创建的Login.js中(所以记得为Home-Index添加login.js的样式)

Login.js完整代码如下(注意!在(Account/Index)和(Home/Index)里面都用到了Login.js里面的样式,需要添加<script>样式

<script src="../../Scripts/Common/Login.js" type="text/javascript"></script>

否则也无法显示,在遇到错误时也要勇于调试反复查找问题)

function Login() {
    //alert("where");
    var name = $("#name").val();
    var pwd = $("#pwd").val();

    //前台逻辑判断
    if (name == '' || pwd == '') {
        $("#showInfo").html("用户名或密码为空");
    }
    else {
        //后台逻辑判断
        $.post("/Account/DoLogin", { name: name, pwd: pwd },
                function (data) {
                    //alert("Data Loaded: " + data);
                    if (data == "-1") {
                        $("#showInfo").html("用户名或密码为空");
                    }
                    else if (data == "-2") {
                        $("#showInfo").html("用户名或密码错误");
                    }
                    else {
                        $("#showInfo").html("登录");
                        window.location.href = "/Home/Index";
                    }
                });
    }
}


function LogoOff() {
    $.messager.confirm('注销', '你确认要注销嘛?', function (r) {
        if (r) {
            //alert('confirmed: ' + r);
            $.post("/Account/DoLoginOff",
                        function (data) {
                            if (data == "-1") {
                                $.messager.alert('Warning', '注销失败');
                            }
                            else {
                                alert('注销成功');
                                window.location.href = "/Account/Index";
                            }
                        });
        }
    });
}

至此,登录-跳转主页-点击主页内容显示tab-注销-返回登录页面,这个流程已经全部完成!大家需要的话也可以把代码打包分享。

 

posted @ 2016-08-11 10:03  JennyJiang  阅读(1921)  评论(0编辑  收藏  举报