本篇文章給大家介紹一下使用bootstrap創(chuàng)建登錄注冊(cè)頁(yè)面并實(shí)現(xiàn)單驗(yàn)證功能的方法。有一定的參考價(jià)值,有需要的朋友可以參考一下,希望對(duì)大家有所幫助。
用bootstrap做登入注冊(cè)頁(yè)面,使用validate做表單驗(yàn)證
技術(shù):bootstrap,font-awesome,jquery-validate;
特點(diǎn):響應(yīng)式布局,表單驗(yàn)證(用戶(hù)兩次密碼是否相同,必填信息是否填寫(xiě))背景圖片自適應(yīng)屏幕大?。?/p>
宗旨:從實(shí)戰(zhàn)中學(xué)知識(shí)。
個(gè)人主頁(yè):http://www.itit123.cn/?更多干貨等你來(lái)拿 (微信小程序入門(mén)教程:入門(mén)教程系列?,提供免費(fèi)的api接口,無(wú)需考慮服務(wù)端代碼問(wèn)題)。
驗(yàn)證碼實(shí)現(xiàn)功能?ITDragon博客
效果圖:
html代碼:
第三方資源的導(dǎo)入是用cdn引入;當(dāng)然也可以自己去下載在本地導(dǎo)入。
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>bootstrap案例</title> <!--用百度的靜態(tài)資源庫(kù)的cdn安裝bootstrap環(huán)境--> <!-- Bootstrap 核心 CSS 文件 --> <link href="http://apps.bdimg.com/libs/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet"> <!--font-awesome 核心我CSS 文件--> <link href="//cdn.bootcss.com/font-awesome/4.3.0/css/font-awesome.min.css" rel="stylesheet"> <!-- 在bootstrap.min.js 之前引入 --> <script src="http://apps.bdimg.com/libs/jquery/2.0.0/jquery.min.js"></script> <!-- Bootstrap 核心 JavaScript 文件 --> <script src="http://apps.bdimg.com/libs/bootstrap/3.3.0/js/bootstrap.min.js"></script> <!--jquery.validate--> <script type="text/javascript" src="js/jquery.validate.min.js" ></script> <script type="text/javascript" src="js/message.js" ></script> <style type="text/css"> body{background: url(img/4.jpg) no-repeat;background-size:cover;font-size: 16px;} .form{background: rgba(255,255,255,0.2);width:400px;margin:100px auto;} #login_form{display: block;} #register_form{display: none;} .fa{display: inline-block;top: 27px;left: 6px;position: relative;color: #ccc;} input[type="text"],input[type="password"]{padding-left:26px;} .checkbox{padding-left:21px;} </style> </head> <body> <!-- 基礎(chǔ)知識(shí): 網(wǎng)格系統(tǒng):通過(guò)行和列布局 行必須放在container內(nèi) 手機(jī)用col-xs-* 平板用col-sm-* 筆記本或普通臺(tái)式電腦用col-md-* 大型設(shè)備臺(tái)式電腦用col-lg-* 為了兼容多個(gè)設(shè)備,可以用多個(gè)col-*-*來(lái)控制; --> <p class="container"> <p class="form row"> <form class="form-horizontal col-sm-offset-3 col-md-offset-3" id="login_form"> <h3 class="form-title">Login to your account</h3> <p class="col-sm-9 col-md-9"> <p class="form-group"> <i class="fa fa-user fa-lg"></i> <input class="form-control required" type="text" placeholder="Username" name="username" autofocus="autofocus" maxlength="20"/> </p> <p class="form-group"> <i class="fa fa-lock fa-lg"></i> <input class="form-control required" type="password" placeholder="Password" name="password" maxlength="8"/> </p> <p class="form-group"> <label class="checkbox"> <input type="checkbox" name="remember" value="1"/> Remember me </label> <hr /> <a href="javascript:;" id="register_btn" class="">Create an account</a> </p> <p class="form-group"> <input type="submit" class="btn btn-success pull-right" value="Login "/> </p> </p> </form> </p> <p class="form row"> <form class="form-horizontal col-sm-offset-3 col-md-offset-3" id="register_form"> <h3 class="form-title">Login to your account</h3> <p class="col-sm-9 col-md-9"> <p class="form-group"> <i class="fa fa-user fa-lg"></i> <input class="form-control required" type="text" placeholder="Username" name="username" autofocus="autofocus"/> </p> <p class="form-group"> <i class="fa fa-lock fa-lg"></i> <input class="form-control required" type="password" placeholder="Password" id="register_password" name="password"/> </p> <p class="form-group"> <i class="fa fa-check fa-lg"></i> <input class="form-control required" type="password" placeholder="Re-type Your Password" name="rpassword"/> </p> <p class="form-group"> <i class="fa fa-envelope fa-lg"></i> <input class="form-control eamil" type="text" placeholder="Email" name="email"/> </p> <p class="form-group"> <input type="submit" class="btn btn-success pull-right" value="Sign Up "/> <input type="submit" class="btn btn-info pull-left" id="back_btn" value="Back"/> </p> </p> </form> </p> </p> <script type="text/javascript" src="js/main.js" ></script> </body> </html>
js代碼:
可能有不合理的方法,畢竟筆者能力有限,如有更好的方法可以留言,我會(huì)及時(shí)修改。
$().ready(function() { $("#login_form").validate({ rules: { username: "required", password: { required: true, minlength: 5 }, }, messages: { username: "請(qǐng)輸入姓名", password: { required: "請(qǐng)輸入密碼", minlength: jQuery.format("密碼不能小于{0}個(gè)字 符") }, } }); $("#register_form").validate({ rules: { username: "required", password: { required: true, minlength: 5 }, rpassword: { equalTo: "#register_password" }, email: { required: true, email: true } }, messages: { username: "請(qǐng)輸入姓名", password: { required: "請(qǐng)輸入密碼", minlength: jQuery.format("密碼不能小于{0}個(gè)字 符") }, rpassword: { equalTo: "兩次密碼不一樣" }, email: { required: "請(qǐng)輸入郵箱", email: "請(qǐng)輸入有效郵箱" } } }); }); $(function() { $("#register_btn").click(function() { $("#register_form").css("display", "block"); $("#login_form").css("display", "none"); }); $("#back_btn").click(function() { $("#register_form").css("display", "none"); $("#login_form").css("display", "block"); }); });
資源下載地址:http://download.csdn.net/detail/qq_19558705/9358603
現(xiàn)在我們開(kāi)始談?wù)勊玫降闹R(shí)點(diǎn):
①bootstrap的布局:
bootstrap用的是網(wǎng)格布局,使用col-*-*
使用條件:要在.container和.row下才能使用,結(jié)構(gòu)如下:
<p class="container"> <p class="row"> <p class="col-*-*"></p> <p class="col-*-*"></p> </p> <p class="row">...</p> </p>
參考值:
col-xs-*:小于768px,手機(jī)
col-sm-*:大于768px,平板
col-md-*:大于998px,普通電腦,筆記本之類(lèi)
col-lg-*:大于1200px,一般為大型臺(tái)式電腦
可以同時(shí)使用,達(dá)到跨多個(gè)設(shè)備效果
偏移:col-*-offset-*
②表單:
這里的表單和普通表單沒(méi)什么太多區(qū)別,我就不多說(shuō)了。
③font-awesome的使用:
使用的是4.3.0版本,使用方法
<i class="fa fa-check fa-lg"></i>
fa-lg表示大圖
更多icon參考:http://fontawesome.dashgame.com/
④jquery-validate表單驗(yàn)證:
這是我要講的重點(diǎn),
第一步:首先到導(dǎo)入jquery-validate第三方資源,
第二步:創(chuàng)建好form表單,初始化validate
$("#login_form").validate({ rules: { username: "required", password: { required: true, minlength: 5 }, }, messages: { username: "請(qǐng)輸入姓名", password: { required: "請(qǐng)輸入密碼", minlength: jQuery.format("密碼不能小于{0}個(gè)字 符") }, } });
注意這里的login_form必須是form表單上的選擇器,筆者因?yàn)閷⑵湓O(shè)置在p上,控制臺(tái)顯示settings沒(méi)有被定義的錯(cuò)誤。這里的username和password都是form表單中的name值;rules是規(guī)則,message是提示的信息
required:true表示該字段為必填,
minlength表示長(zhǎng)度至少為5,maxlength是html5支持的,所以不用在這里面設(shè)置
equalTo表示與某某相同,后面接的是第一個(gè)值,"#id"或者是".class"
message中對(duì)應(yīng)的內(nèi)容后面就是提示的文字信息。可以直接copy我的代碼,然后根據(jù)自己的需要修改。
⑤背景自適應(yīng)屏幕大?。?/p>
不知道前到處找文檔,知道后才發(fā)現(xiàn)好簡(jiǎn)單,那就是background-size:cover;這樣可以做到背景圖片和瀏覽器大小一樣了。很簡(jiǎn)單吧。
bootstrap創(chuàng)建登錄注冊(cè)頁(yè)面github下載地址:
https://github.com/ITDragonBlog/daydayup/blob/master/bootstrap
我覺(jué)得在實(shí)戰(zhàn)中學(xué)習(xí)比盲目學(xué)習(xí)效果好很多,知道這些知識(shí)可以做什么,解決了為什么學(xué)這些知識(shí)的問(wèn)題。
我總結(jié),你來(lái)學(xué),一起裝逼一起飛。有什么疑問(wèn)和建議可以留言,我會(huì)及時(shí)修改。轉(zhuǎn)載請(qǐng)注明來(lái)源。
更多編程相關(guān)知識(shí),請(qǐng)?jiān)L問(wèn):編程學(xué)習(xí)網(wǎng)站!!
以上就是使用bootstrap創(chuàng)建登錄注冊(cè)頁(yè)面并實(shí)現(xiàn)表單驗(yàn)證功能的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
每個(gè)人都需要一臺(tái)速度更快、更穩(wěn)定的 PC。隨著時(shí)間的推移,垃圾文件、舊注冊(cè)表數(shù)據(jù)和不必要的后臺(tái)進(jìn)程會(huì)占用資源并降低性能。幸運(yùn)的是,許多工具可以讓 Windows 保持平穩(wěn)運(yùn)行。
微信掃碼
關(guān)注PHP中文網(wǎng)服務(wù)號(hào)
QQ掃碼
加入技術(shù)交流群
Copyright 2014-2025 http://www.miracleart.cn/ All Rights Reserved | php.cn | 湘ICP備2023035733號(hào)