Ajax基礎(chǔ)與登入教程
Ajax 是 Asynchronous JavaScript and XML的縮寫。
Ajax的優(yōu)點(diǎn):
優(yōu)點(diǎn):減輕服務(wù)器的負(fù)擔(dān),按需取數(shù)據(jù),最大程度的減少冗余請(qǐng)求
局部刷新頁面,減少用戶心理和實(shí)際的等待時(shí)間,帶來更好的用戶體驗(yàn)
基于xml標(biāo)準(zhǔn)化,并被廣泛支持,不需安裝插件等
進(jìn)一步促進(jìn)頁面和數(shù)據(jù)的分離
Ajax包含下列技術(shù):
基于web標(biāo)準(zhǔn)(standards-based presentation)XHTML+CSS的表示;
使用 DOM(Document Object Model)進(jìn)行動(dòng)態(tài)顯示及交互;
使用 XML 和 XSLT 進(jìn)行數(shù)據(jù)交換及相關(guān)操作;
使用 XMLHttpRequest 進(jìn)行異步數(shù)據(jù)查詢、檢索;
使用 JavaScript 將所有的東西綁定在一起?! ?/p>
也就是說Ajax最大的特點(diǎn)就是可以實(shí)現(xiàn)動(dòng)態(tài)不刷新
使用Ajax:
例子:
在數(shù)據(jù)庫中的一張表:
實(shí)現(xiàn)點(diǎn)擊查看用戶名是否可用:
主頁面代碼:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script src="jquery-1.11.2.min.js"></script> </head> <body> 輸入一個(gè)用戶名:<input type="text" id="zhang" /> <span id="tishi"></span> </body> </html> <script> //給文本框加上事件 $("#zhang").blur(function(){ //1取內(nèi)容 var zhang = $(this).val(); //val取到表單元素、給變量 //2將取到的內(nèi)容內(nèi)容區(qū)數(shù)據(jù)庫驗(yàn)證 //調(diào)用Ajax $.ajax({ type:"POST", //提交方式 url:"chuli.php", //請(qǐng)求哪一個(gè)php文件(請(qǐng)求地址) data:{yhm:zhang}, //給zhang取名yhm,傳過去,是一個(gè)json //請(qǐng)求處理頁面需不需要傳數(shù)據(jù)過去,不需要傳不用寫 dataType:"TEXT", //處理頁面返回的類型:TEXT字符串 JSON,JSON,XML,只有三種類型 success:function(data){ //回調(diào)函數(shù) // data為返回的值 //成功之后要調(diào)用的函數(shù) if(data==0) { //如果為0 $("#tishi").text("該用戶名為0;可用!"); $("#tishi").css("color","green"); } else { $("#tishi").text("該用戶名已存在;不可用!"); $("#tishi").css("color","brown"); } } }); //3給出提示 }) </script>
接下來做處理頁面:
<?php $zhang = $_POST["yhm"]; //取值 include("db.class.php"); $db = new db(); $sql = "select count(*) from mydb where zhang = '{$zhang}'"; $arr = $db->Query($sql); echo $arr[0][0]; //直接輸出相當(dāng)于返回 ?>
圖:
輸入已存在用戶名:
輸入不存在的用戶名:
再來寫一個(gè)登入:
登入頁面的代碼:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> <script src="jquery-1.11.2.min.js"></script> </head> <body> <h1>登入頁面</h1> <div>帳號(hào)<input type="text" id="zhang"/></div> <div>密碼<input type="text" id="mi"/></div> <input type="button" id="btn" value="登入"/> </body> </html> <script> $("#btn").click(function(){ //1取數(shù)據(jù) var zhang = $("#zhang").val(); var mi = $("#mi").val(); //2驗(yàn)證數(shù)據(jù) $.ajax({ url:"drcl.php", data:{zhang:zhang,mi:mi}, type:"POST", dataType:"TEXT", success:function (data) { //回調(diào)函數(shù) //判斷返回值 if(data=="ok") { window.location.href = "zym.php"; } else { alert("用戶名或密碼錯(cuò)誤"); } } }); //提示 }) </script>
接下來是登入處理頁面:
<?php include ("db.class.php"); $db = new db(); $zhang = $_POST["zhang"]; $mi = $_POST["mi"]; //取值 $sql = "select mi from mydb WHERE zhang = '{$zhang}'"; $arr = $db->Query($sql); if($arr[0][0]==$mi && !empty($mi)) { echo "ok"; } else { echo "no"; } ?>
來看一下圖,如果輸入的不對(duì) 直接在本頁面提示:
輸入的對(duì)就跳轉(zhuǎn):
用Ajax寫登入的好處就是提示錯(cuò)誤的時(shí)候不用跳到別的頁面。
以上所述是小編給大家介紹的Ajax基礎(chǔ)與登入教程,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
AJAX 用戶注冊(cè)時(shí)的應(yīng)用實(shí)例
我所舉的這個(gè)例子是一個(gè)企業(yè)用戶注冊(cè)時(shí)的一個(gè)應(yīng)用,當(dāng)用戶注冊(cè)時(shí)檢查用戶名和企業(yè)名是否可用,以前的做法是在旁邊加一個(gè)按鈕,點(diǎn)擊“檢查”,就向服務(wù)器發(fā)出請(qǐng)求,然后等待……服務(wù)器返回信息,繼續(xù)操作。2008-12-12ajax+springmvc實(shí)現(xiàn)C與View之間的數(shù)據(jù)交流方法
下面小編就為大家?guī)硪黄猘jax+springmvc實(shí)現(xiàn)C與View之間的數(shù)據(jù)交流方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-03-03js統(tǒng)計(jì)網(wǎng)頁在線時(shí)間的腳本
分析用戶行為時(shí),某網(wǎng)頁停留時(shí)間可能會(huì)是個(gè)可參考的數(shù)據(jù) 由后臺(tái)分析函數(shù)取一個(gè)合理值作為在線時(shí)間2008-04-04Ajax實(shí)現(xiàn)帶有驗(yàn)證碼的局部刷新登錄界面
很多登錄界面都有驗(yàn)證碼功能局部刷新效果,接下來通過本文給大家分享ajax實(shí)現(xiàn)帶有驗(yàn)證碼的局部刷新登錄界面,感興趣的朋友一起看看吧2016-09-09$.ajax()方法進(jìn)行網(wǎng)頁間傳值示例
這篇文章主要介紹了$.ajax()方法進(jìn)行網(wǎng)頁間傳值的具體實(shí)現(xiàn),需要的朋友可以參考下2014-04-04編碼為GB2312網(wǎng)站讓AJAX接收的數(shù)據(jù)顯示支持中文
GB2312 網(wǎng)站AJAX接收的數(shù)據(jù)顯示支持中文2010-01-01使用加載圖片解決在Ajax數(shù)據(jù)加載中頁面出現(xiàn)短暫空白的問題(推薦)
在項(xiàng)目中用ajax異步獲取數(shù)據(jù)后有時(shí)會(huì)因?yàn)閿?shù)據(jù)問題或者網(wǎng)絡(luò)問題,頁面一直顯示空白,現(xiàn)在用加載圖片來過渡這種狀態(tài),具體實(shí)例代碼通過本文一起學(xué)習(xí)吧2016-12-12ajax類AJAXRequest v0.8.01 2008-01-31 最新版附使用幫助
2008-02-02Ajax 表單驗(yàn)證 實(shí)現(xiàn)代碼
最近做了一個(gè)項(xiàng)目中的登錄注冊(cè)模塊,大部分功能從一個(gè)網(wǎng)站里扣出來的,部分功能自己修改,自認(rèn)為還是有點(diǎn)人性化的2009-05-05