使用layui實現登錄功能

由於coloradmin太過於龐大,感受不適合前端入門,而layui一眼看上去就很清爽,看了官網上的案例,作的也不錯。因此選擇layui。下面會記錄一些自認爲有價值的知識點。javascript

1、layui框架的文件結構以下:css

輸入圖片說明

一、layui的使用有模塊化和非模塊法兩種用法。因此要了解一下什麼是模塊化,html

參考博客:http://www.jb51.net/article/107245.htm前端

二、內置方法config的使用java

能夠在使用模塊以前,全局化配置一些參數,以下:jquery

layui.config(
{
    dir : '/res/layui/' //layui.js 所在路徑(注意,若是是script單獨引入layui.js,無需設定該參數。),通常狀況下能夠無視
,
    version : false //通常用於更新模塊緩存,默認不開啓。設爲true即讓瀏覽器不緩存。也能夠設爲一個固定的值,如:201610
,
    debug : false //用於開啓調試模式,默認false,若是設爲true,則JS模塊的節點會保留在頁面
,
    base : '' //設定擴展的Layui模塊的所在目錄,通常用於外部模塊擴展
}
);
//這裏我主要來理解下base參數,當我自定義了一個模塊,如user.js,放在/static/js/目錄下,即不是layui裏有的,那麼我能夠經過以下方法使用自定義模塊裏的方法:
layui.config(
{
    base : "/static/js/"
}
).use(['user'], function ()
{
    var user = layui.user;
    user.findUsrByUserName(username);
}
);
]

3登陸頁面的實現ajax

(1)登錄,我主要用了layui的輪播和提交功能,語言太慘白i,直接貼代碼:瀏覽器

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta charset="UTF-8" />
  <title>登陸</title>
  <link rel="stylesheet" href="/resource/plugins/layui/css/layui.css" type="text/css" />
  <link rel="stylesheet" href="/resource/css/login.css" type="text/css" />
  <script type="text/javascript" src="/resource/plugins/layui/layui.js">
</script>
</head>
<body>
  <div class="layui-carousel video_mask" id="login_carousel">
    <div carousel-item="">
      <div class="carousel_div1"></div>

      <div class="carousel_div2"></div>

      <div class="carousel_div3"></div>

      <div class="carousel_div4"></div>

      <div class="carousel_div5"></div>
    </div>

    <div class="login layui-anim layui-anim-up">
      <h1>登陸</h1>

      <form class="layui-form" action="" method="post">
        <div class="layui-form-item">
          <input type="text" name="username" lay-verify="required" placeholder="請輸入用戶名" autocomplete="off" value="" class="layui-input" />
        </div>

        <div class="layui-form-item">
          <input type="password" name="password" lay-verify="required" placeholder="請輸入密碼" autocomplete="off" value="" class="layui-input" />
        </div><button class="layui-btn layui-btn-normal login_btn" lay-submit="" lay-filter="login">登錄系統</button>
      </form>
    </div>
  </div>
</body>
</html>![輸入圖片說明](https://static.oschina.net/uploads/img/201709/03092118_VUPK.png "在這裏輸入圖片標題")
< script type = "text/javascript" >
    //<![CDATA[
    layui.use(['form', 'layer', 'jquery', 'carousel'], function ()
    {
        var $ = layui.jquery,
        form = layui.form,
        carousel = layui.carousel;
        
        /**背景圖片輪播*/
        carousel.render(
        {
            elem : '#login_carousel',
            width : '100%',
            height : '100%',
            interval : 2000,
            arrow : 'none',
            anim : 'fade',
            indicator : 'none'
        }
        );
        
        /**監聽登錄提交*/
        form.on('submit(login)', function (data)
        {
            //彈出loading
            var loginLoading = top.layer.msg('登錄中,請稍候',
                {
                    icon : 16,
                    time : false,
                    shade : 0.8
                }
                );
            //記錄ajax請求返回值
            var ajaxReturnData;
            
            //登錄驗證
            $.ajax(
            {
                url : '/login/login',
                type : 'post',
                async : false,
                data : data.field,
                success : function (data)
                {
                    ajaxReturnData = data;
                }
            }
            );
            
            //登錄成功
            if (ajaxReturnData.rendercode == 0)
            {
                window.location.href = "/";
                top.layer.close(loginLoading);
                return false;
            }
            else
            {
                top.layer.close(loginLoading);
                top.layer.msg(ajaxReturnData.errmsg,
                {
                    icon : 5
                }
                );
                return false;
            }
        }
        );
    }
    );
//]]>
<  / script >
相關文章
相關標籤/搜索