layui實現登陸

1、layui簡介

layui(諧音:類UI) 是一款採用自身模塊規範編寫的前端 UI 框架,遵循原生 HTML/CSS/JS 的書寫與組織形式,門檻極低,拿來即用。其外在極簡,卻又不失飽滿的內在,體積輕盈,組件豐盈,從核心代碼到 API 的每一處細節都通過精心雕琢,很是適合界面的快速開發.javascript

得到layui

你能夠在LayUI  官網首頁 下載到 layui 的最新版,它通過了自動化構建,更適合用於生產環境。目錄結構以下:

 

  1. ├─css //css目錄
  2. │ │─modules //模塊css目錄(通常若是模塊相對較大,咱們會單獨提取,好比下面三個:)
  3. │ │ ├─laydate
  4. │ │ ├─layer
  5. │ │ └─layim
  6. │ └─layui.css //核心樣式文件
  7. ├─font //字體圖標目錄
  8. ├─images //圖片資源目錄(目前只有layim和編輯器用到的GIF表情)
  9. │─lay //模塊核心目錄
  10. │ └─modules //各模塊組件
  11. │─layui.js //基礎核心庫
  12. └─layui.all.js //包含layui.js和全部模塊的合併文件

2、實現登陸

2.1.環境

本文是在eclipse下springboot1.5.15+mybatis+springMVC+LayUI2.4.5實現登陸css

2.2. 起步依賴

2.2.1. 建立一個Maven工程

因爲這裏主講layui,springboot如何集成mybatis,springMVChtml

2.2.2 得到 layui 後,將其完整地部署到你的項目目錄(或靜態資源服務器),你只須要引入下述兩個文件:

 

  1. layui/css/layui.css
  2. layui/layui.js ,此處可換成:./layui/layui.all.js

項目結構以下:前端

引入代碼能夠這樣寫:java

<link rel="stylesheet" href="${path}/js/layui/css/layui.css">
<script src="${path}/js/layui/layui.js"></script>

2.三、前臺頁面login.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<!-- 自適應 -->
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>Insert title here</title>
<!--導入這兩個文件根據本身的路徑進行修改-->
<link rel="stylesheet" href="${path}/js/layui/css/layui.css">
<script src="${path}/js/layui/layui.js"></script>
</head> <body> <form class="layui-form" action="login" ><!--提交給這個controller--> <div class="layui-form-item"> <label class="layui-form-label">用戶名</label> <div class="layui-input-inline"> <input type="text" name="username" required lay-verify="required" placeholder="請輸入用戶名" autocomplete="off" class="layui-input"> </div> </div> <div class="layui-form-item"> <label class="layui-form-label">密碼</label> <div class="layui-input-inline"> <input type="password" name="pass" required lay-verify="required" placeholder="請輸入密碼" autocomplete="off" class="layui-input"> </div> </div> <div class="layui-form-item"> <div class="layui-input-block"> <button class="layui-btn" lay-submit lay-filter="formDemo">當即提交</button> </div> </div> </form> <script type="text/javascript"> //layui.user(加載使用的模塊),咱們這裏只使用了form,還能夠加載table,jquery等等 layui.use('form',function(){ var form=layui.form; //監聽form的提交 監聽lay-filter form.on(submit('formDemo'),function(data){ console.log(); //alert(data.field); }) }) </script> </body> </html>

  這裏的form表單拷貝layui的官網form,根據本身需求修改.jquery

2.4 新建Controller類LoginController

package com.jiyun.springboot.controller;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.servlet.ModelAndView;

import com.jiyun.springboot.bean.User;
import com.jiyun.springboot.service.UserService;

@RestController
public class LoginController {
	@Autowired
	private UserService userService;
	@RequestMapping("login")
	public ModelAndView login(User user){
		System.out.println("user=="+user);
		ModelAndView model = new ModelAndView();
		
		User re=userService.selectByNamePass(user);
		System.out.println("re======="+re);
		if(re!=null){
			//登陸成功,返回success.jsp
			model.addObject("username", user.getUsername());
			model.setViewName("success");
		}else{
			//失敗,返回登陸頁面
		}
		return model;
		
		
		
	}

}

 建立UserService,UserDao,UserMapper.xml,查詢數據庫,會返回User對象.web

2.6新建success.jsp頁面

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  <title>主頁面</title>
  <link rel="stylesheet" href="${path}/js/layui/css/layui.css">
  
</head>
<body class="layui-layout-body">
<div class="layui-layout layui-layout-admin">
  <div class="layui-header">
    <div class="layui-logo">layui 後臺佈局</div>
    <!-- 頭部區域(可配合layui已有的水平導航) -->
    <ul class="layui-nav layui-layout-left">
      <li class="layui-nav-item"><a href="">公司介紹</a></li>
      <li class="layui-nav-item"><a href="">熱力資源部</a></li>
      <li class="layui-nav-item"><a href="">請假申請</a></li>
      
      <li class="layui-nav-item">
        <a href="javascript:;">其它系統</a>
        <dl class="layui-nav-child">
          <dd><a href="">郵件管理</a></dd>
          <dd><a href="">消息管理</a></dd>
          <dd><a href="">受權管理</a></dd>
        </dl>
      </li>
    </ul>
    <ul class="layui-nav layui-layout-right">
      <li class="layui-nav-item">
        <a href="javascript:;">
          <img src="http://t.cn/RCzsdCq" class="layui-nav-img">
         
			${username}
        </a>
        <dl class="layui-nav-child">
          <dd><a href="">基本資料</a></dd>
          <dd><a href="">安全設置</a></dd>
        </dl>
      </li>
      <li class="layui-nav-item"><a href="">退了</a></li>
    </ul>
  </div>
  
  <div class="layui-side layui-bg-black">
    <div class="layui-side-scroll">
      <!-- 左側導航區域(可配合layui已有的垂直導航) -->
      <ul class="layui-nav layui-nav-tree"  lay-filter="test">
        <li class="layui-nav-item layui-nav-itemed">
          <a class="" href="javascript:;">員工管理</a>
          <dl class="layui-nav-child">
            <dd><a class="site-demo-active"   data-id="員工信息" data-title="員工信息" data-url="/getAllEmp" data-type="tabAdd">員工信息</a></dd>
            <dd><a class="site-demo-active" data-id="新增員工" href="javascript:;">新增員工</a></dd>
            <dd><a class="site-demo-active" data-id="刪除清零" href="javascript:;">刪除清零</a></dd>
            <!-- <dd><a href="">超連接</a></dd> -->
          </dl>
        </li>
        <li class="layui-nav-item">
          <a href="javascript:;">部門管理</a>
          <dl class="layui-nav-child">
            <dd><a class="site-demo-active" data-id="部門信息" href="javascript:;">部門信息</a></dd>
            <dd><a class="site-demo-active" data-id="新增部門" href="javascript:;">新增部門</a></dd>
            <dd><a class="site-demo-active" data-id="部門清零" href="javascript:;">部門清零</a></dd>
          </dl>
        </li>
       
      </ul>
    </div>
  </div>
  
  <!-- 選項卡面板 -->
<div class="layui-tab" lay-filter="demo" lay-allowclose="true"
			style="margin-left: 200px;">
			<ul class="layui-tab-title">
				
			</ul>
			<div class="layui-tab-content"></div>
</div>



  
 <!--  <div class="layui-footer">
    底部固定區域
    © layui.com - 底部固定區域
  </div> -->
</div>
<script src="${path}/js/layui/layui.js"></script>
<script>
//JavaScript代碼區域
layui.use('element', function(){
  var element = layui.element;
  var $ = layui.jquery;
  var active = {
          //在這裏給active綁定幾項事件,後面可經過active調用這些事件
		tabAdd: function(url,id,name) {
			
			alert(url+id+name);
			
              //新增一個Tab項 傳入三個參數,分別對應其標題,tab頁面的地址,還有一個規定的id,是標籤中data-id的屬性值
              //關於tabAdd的方法所傳入的參數可看layui的開發文檔中基礎方法部分
			element.tabAdd('demo', {
                  title: name,
                  content: '<iframe data-frameid="'+id+'" scrolling="no" frameborder="0" src="'+url+'" style="width:100%;"></iframe>',
                  id: id //規定好的id
			})
              element.render('tab');

          },
          tabChange: function(id) {
              //切換到指定Tab項
			element.tabChange('demo', id); //根據傳入的id傳入到指定的tab項
		  },
          tabDelete: function (id) {
              element.tabDelete("demo", id);//刪除
          },
          tabDeleteAll: function (ids) {//刪除全部
			$.each(ids, function (i,item) {
                  element.tabDelete("demo", item); //ids是一個數組,裏面存放了多個id,調用tabDelete方法分別刪除
			})
          }
      };


      //當點擊有site-demo-active屬性的標籤時,即左側菜單欄中內容 ,觸發點擊事件
$('.site-demo-active').on('click', function() {
			////alert("hello");
          var dataid = $(this);
			//alert(dataid);
			
			//alert($(".layui-tab-title li[lay-id]").length)
          //這時會判斷右側.layui-tab-title屬性下的有lay-id屬性的li的數目,即已經打開的tab項數目
	if ($(".layui-tab-title li[lay-id]").length <= 0) {
              //若是比零小,則直接打開新的tab項
		active.tabAdd(dataid.attr("data-url"), dataid.attr("data-id"),dataid.attr("data-title"));
     } else {
              //不然判斷該tab項是否以及存在

		var isData = false; //初始化一個標誌,爲false說明未打開該tab項 爲true則說明已有
		$.each($(".layui-tab-title li[lay-id]"), function () {
                  //若是點擊左側菜單欄所傳入的id 在右側tab項中的lay-id屬性能夠找到,則說明該tab項已經打開
			if ($(this).attr("lay-id") == dataid.attr("data-id")) {
                      isData = true;
             }
         })
         if (isData == false) {
                  //標誌爲false 新增一個tab項
			active.tabAdd(dataid.attr("data-url"), dataid.attr("data-id"),dataid.attr("data-title"));
          }
     }
          //最後無論是否新增tab,最後都轉到要打開的選項頁面上
	active.tabChange(dataid.attr("data-id"));
 });

  
  
});
</script>
</body>
</html>

  這個頁面使用的是layUI提供的後臺佈局。spring

你們有問題能夠留言。數據庫

相關文章
相關標籤/搜索