jquery ajax 檢測用戶注冊(cè)時(shí)用戶名是否存在
更新時(shí)間:2009年11月03日 23:37:03 作者:
當(dāng)用戶注冊(cè)需要知道這個(gè)用戶名是否被人使用所以需要在用戶登陸前判斷為了使用戶得到更好的體驗(yàn),我們使用了jquery的ajax效果,來用戶名是否存在。
首先需要一個(gè)添加年級(jí)的頁面,暫時(shí)叫g(shù)rade.htm
這個(gè)文件需要引入兩個(gè)文件jquery.js(jquery框架文件)和grade.js(驗(yàn)證的單獨(dú)文件)。
下面的input用于輸入用戶名字,id="gradeInfo"是為了顯示提示信息用的。
grade.htm
<input type="text" size="6" name="NAME" id="NAME"/><font color="red">*</font>
<span id="gradeInfo"></span>
當(dāng)用戶輸入信息以后,進(jìn)入驗(yàn)證環(huán)節(jié),看看我們的驗(yàn)證grade.js是怎么寫的。
grade.js
/**
* 驗(yàn)證用戶名是否重復(fù)的js
*
* @name grade.js
* @author jason<msn:x334@eyou.com>
* @use 驗(yàn)證用戶名是否存在
* @todo
*/
$(document).ready(function(){
checkConfirm();
});
//驗(yàn)證用戶名是否存在
function checkConfirm(){
$("#NAME").blur(function(){
var gradename = $(this).val();
var changeUrl = "GradeAdmin.php?action=check&gradename="+gradename;
$.get(changeUrl,function(str){
if(str == '1'){
$("#gradeInfo").html("<font color=\"red\">您輸入的用戶名存在!請(qǐng)重新輸入!</font>");
}else{
$("#gradeInfo").html("");
}
})
return false;
})
}
上面這段js文件,我只解釋幾個(gè)比較關(guān)鍵的地方。
1、$("#NAME").blur的含義是當(dāng)grade.htm里的id為NAME的表單輸入完以后觸發(fā)動(dòng)作。
2、$(this).val()的含義是取得id為NAME的表單里的值。
3、$.get(changeUrl,function(str)的含義是:運(yùn)行ajax后,changeUrl是要連接的程序地址,str是程序
計(jì)算結(jié)束以后得到的顯示結(jié)構(gòu)。
4、$("#gradeInfo").html的含義是給id為gradeInfo的標(biāo)簽寫入html文件。id為gradeInfo的標(biāo)簽就是指
的grade.htm里的id為gradeInfo的標(biāo)簽,顯示的內(nèi)容會(huì)出現(xiàn)再這個(gè)標(biāo)簽所在的位置。
再看看GradeAdmin.php的計(jì)算形式。
GradeAdmin.php
復(fù)制代碼
if($frm_action == 'check')
{
$gradeName = $_GET['gradename'];
$gradeAdminObj = new Services_GradeAdmin($db);
//根據(jù)$gradeName去判斷是否再數(shù)據(jù)庫里存在填入的用戶名字,如果存在返回1,如果
不存在返回0,這個(gè)返回值是傳到grade.js里。
$gradeCheck = $gradeAdminObj->getGradeByName($gradeName);
if(is_numeric($gradeCheck)){
echo '1';
}else{
echo '0';
}
exit();
}
這就是判斷用戶注冊(cè)時(shí)用戶名是否已存在問題
這個(gè)文件需要引入兩個(gè)文件jquery.js(jquery框架文件)和grade.js(驗(yàn)證的單獨(dú)文件)。
下面的input用于輸入用戶名字,id="gradeInfo"是為了顯示提示信息用的。
grade.htm
復(fù)制代碼 代碼如下:
<input type="text" size="6" name="NAME" id="NAME"/><font color="red">*</font>
<span id="gradeInfo"></span>
當(dāng)用戶輸入信息以后,進(jìn)入驗(yàn)證環(huán)節(jié),看看我們的驗(yàn)證grade.js是怎么寫的。
grade.js
復(fù)制代碼 代碼如下:
/**
* 驗(yàn)證用戶名是否重復(fù)的js
*
* @name grade.js
* @author jason<msn:x334@eyou.com>
* @use 驗(yàn)證用戶名是否存在
* @todo
*/
$(document).ready(function(){
checkConfirm();
});
//驗(yàn)證用戶名是否存在
function checkConfirm(){
$("#NAME").blur(function(){
var gradename = $(this).val();
var changeUrl = "GradeAdmin.php?action=check&gradename="+gradename;
$.get(changeUrl,function(str){
if(str == '1'){
$("#gradeInfo").html("<font color=\"red\">您輸入的用戶名存在!請(qǐng)重新輸入!</font>");
}else{
$("#gradeInfo").html("");
}
})
return false;
})
}
上面這段js文件,我只解釋幾個(gè)比較關(guān)鍵的地方。
1、$("#NAME").blur的含義是當(dāng)grade.htm里的id為NAME的表單輸入完以后觸發(fā)動(dòng)作。
2、$(this).val()的含義是取得id為NAME的表單里的值。
3、$.get(changeUrl,function(str)的含義是:運(yùn)行ajax后,changeUrl是要連接的程序地址,str是程序
計(jì)算結(jié)束以后得到的顯示結(jié)構(gòu)。
4、$("#gradeInfo").html的含義是給id為gradeInfo的標(biāo)簽寫入html文件。id為gradeInfo的標(biāo)簽就是指
的grade.htm里的id為gradeInfo的標(biāo)簽,顯示的內(nèi)容會(huì)出現(xiàn)再這個(gè)標(biāo)簽所在的位置。
再看看GradeAdmin.php的計(jì)算形式。
GradeAdmin.php
復(fù)制代碼
復(fù)制代碼 代碼如下:
if($frm_action == 'check')
{
$gradeName = $_GET['gradename'];
$gradeAdminObj = new Services_GradeAdmin($db);
//根據(jù)$gradeName去判斷是否再數(shù)據(jù)庫里存在填入的用戶名字,如果存在返回1,如果
不存在返回0,這個(gè)返回值是傳到grade.js里。
$gradeCheck = $gradeAdminObj->getGradeByName($gradeName);
if(is_numeric($gradeCheck)){
echo '1';
}else{
echo '0';
}
exit();
}
這就是判斷用戶注冊(cè)時(shí)用戶名是否已存在問題
您可能感興趣的文章:
- 利用Ajax檢測用戶名是否被占用的完整實(shí)例
- JQuery Ajax如何實(shí)現(xiàn)注冊(cè)檢測用戶名
- PHP+Ajax實(shí)現(xiàn)的檢測用戶名功能簡單示例
- AJAX應(yīng)用實(shí)例之檢測用戶名是否唯一(實(shí)例代碼)
- AJAX實(shí)現(xiàn)無刷新檢測用戶名功能
- jQuery+Ajax實(shí)現(xiàn)用戶名重名實(shí)時(shí)檢測
- 使用Ajax實(shí)時(shí)檢測"用戶名、郵箱等"是否已經(jīng)存在
- PHP+Ajax檢測用戶名或郵件注冊(cè)時(shí)是否已經(jīng)存在實(shí)例教程
- Asp.net下利用Jquery Ajax實(shí)現(xiàn)用戶注冊(cè)檢測(驗(yàn)證用戶名是否存)
- PHP+AJAX實(shí)現(xiàn)無刷新注冊(cè)(帶用戶名實(shí)時(shí)檢測)
- PHP+AJAX實(shí)現(xiàn)無刷新注冊(cè)(帶用戶名實(shí)時(shí)檢測)
- ajax 檢測用戶名是否被占用
- AJAX檢測用戶名是否存在的方法
相關(guān)文章
使用jQuery實(shí)現(xiàn)兩個(gè)div中按鈕互換位置的實(shí)例代碼
這篇文章主要介紹了使用jQuery實(shí)現(xiàn)兩個(gè)div中按鈕互換位置的實(shí)例代碼,需要的朋友可以參考下2017-09-09關(guān)于jquery input textare 事件綁定及用法學(xué)習(xí)
目前1.7以上,jquery的事件綁定已經(jīng)用on替換了原來的bind,接下來為大家介紹下bind的使用方法及input textare事件,感興趣的朋友可以參考下哈2013-04-04jquery 層次選擇器siblings與nextAll的區(qū)別介紹
jquery 層次選擇器包括siblings與nextAll,本文為大家介紹下具體的使用方法,想學(xué)習(xí)的朋也可以參考下,希望對(duì)大家有所幫助2013-08-08