$('#username').blur(function(){
成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比貢覺網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式貢覺網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋貢覺地區(qū)。費(fèi)用合理售后完善,十多年實(shí)體公司更值得信賴。
$.ajax({
url:從數(shù)據(jù)庫驗(yàn)證用戶是否重復(fù)的action地址,
type:'POST',
data:{username:username},
dataType:'json',
success:function(jsonData){
if (jsonData == null) {
$(“#tips”).html('查詢用戶名列表錯(cuò)誤');
}else if (jsonData.result == "true") {
$(“#tips”).html('用戶名重復(fù)');
}else if(jsonData.result == "false") {
$(“#tips”).html('恭喜你,用戶名可以使用');
}
},
error:function(jsonData){
}
});
});
jquery調(diào)用ajax,調(diào)用后臺(tái)方法判斷用戶名是否重復(fù)。驗(yàn)證的話,varusername=$("#username").val();if(username==""){returnfalse;}上面為驗(yàn)證不能為空
取出用戶名中的值,讓后臺(tái)來判斷一下是不是存在,把信息返回給前端,前端顯示,用ajax就可以了:
$('#btn').bind('click',?function(event)?{
//取出你用戶名
var?username?=?$('#username').val();
$.ajax({
url:?'/path/to/file',
dataType:?'json',
data:?{username:?username},
success?:?function(obj){
//obj是返回的信息,說明用戶名是不是存在
//執(zhí)行你想要的操作
}
})
});
比如下面這個(gè):
“用戶的輸入都是不可靠的”,忘了是哪位牛人說的這句話,所以對用戶輸入的數(shù)據(jù)進(jìn)行檢測是非常必要的。
以前我做客戶端的檢測都是一個(gè)屬性寫一個(gè)函數(shù),我自己也覺得很不好,但也沒有更好的辦法,今天在一人blog里看到介紹jQuery的插件Validation,看了下,真的感覺很不錯(cuò)。jQuery提供的參數(shù)文檔,這插件的作者提供的一些DEMO,下載地址在這里。
$.validator.setDefaults({
debug: true
});
設(shè)置默認(rèn)的狀態(tài)為debug,這樣用戶的數(shù)據(jù)就不會(huì)提交了。
接下來是一段比較長的代碼,但是不用怕,因?yàn)檎娴耐唵蔚?/當(dāng)頁面載入完成時(shí),執(zhí)行以下動(dòng)作
$().ready(function() {
$("#myform").validate({
//設(shè)置默認(rèn)的狀態(tài)為keyup,也可以設(shè)置為blur
event: "keyup",
//設(shè)定規(guī)則
rules: {
//對應(yīng)id為'username'的input
username: {
//必填項(xiàng)
required: true,
//最多和最少的字符數(shù)
rangeLength:[4,16]
},
mail: {
required: true,
//聲明這是一個(gè)電子郵件
email: true
},
password: {
required: true,
//最少4個(gè)字符
minLength: 4
},
confirm_password: {
required: true,
minLength: 4,
// 與哪個(gè)等同,這里是id為password的input等同
equalTo: "#password"
},
agree: "required"
},
//這里是與規(guī)則對應(yīng)的錯(cuò)誤代碼
messages: {
username: {
//如果用戶名為空,則顯示下面的信息
required: '請輸入用戶名',
//如果字符串的長度不符合,則顯示下面的信息
rangeLength: '用戶名必須在4-16個(gè)字符之間'
},
password: {
required: '請輸入密碼',
minLength: '密碼必須大于4個(gè)字符'
},
confirm_password: {
required: '請確認(rèn)你的密碼',
equalTo: '兩次密碼輸入不一致',
minLength: '密碼必須大于4個(gè)字符'
},
agree: '請同意我們的條款',
mail: '請輸入有效的E-MAIL帳戶'
},
//可選項(xiàng),當(dāng)用戶的輸入符合我們設(shè)定的規(guī)則時(shí)顯示
success: function(label) {
label.html('√').addClass("success");
}
});
});
/script
代碼里寫了注釋,看起來應(yīng)該還是比較容易理解的吧,最后就是一個(gè)form
form id="myform" action="index.html" method="get"
fieldset
legend用戶注冊界面/legend
plabel for="username"用戶名:/label
input type="text" name="username" id="username" /
plabel for="mail"電子郵件地址:/label
input type="text" name="mail" id="mail" /
plabel for="password"密碼:/label
input type="password" name="password" id="password" /
plabel for="confirm_password"密碼確認(rèn):/label
input type="password" name="confirm_password" id="confirm_password" /
plabel for="agree"請同意我們的條款:/labelinput type="checkbox" name="agree" id="agree" /
div id="submit"input type="submit" value="Submit" //div
/fieldset
/form