重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
取出用户名中的值,让后台来判断一下是不是存在,把信息返回给前端,前端显示,用ajax就可以了:
创新互联公司是一家专注于做网站、成都网站制作与策划设计,友好网站建设哪家好?创新互联公司做网站,专注于网站建设十多年,网设计领域的专业建站公司;建站业务涵盖:友好等地区。友好做网站价格咨询:028-86922220
$('#btn').bind('click', function(event) {
//取出你用户名
var username = $('#username').val();
$.ajax({
url: '/path/to/file',
dataType: 'json',
data: {username: username},
success : function(obj){
//obj是返回的信息,说明用户名是不是存在
//执行你想要的操作
}
})
});
其中用到了jquery插件来验证用户名哦,这里是利用jquery
ajax来验证用户名是否存在哦。大家看看效果图,后面将附上源码下载。
jquery框架实现的ajax
验证用户名是否存在的部分JS
复制代码
代码如下:
$("#accounts").formValidator({onshow:"请输入用户名",onfocus:"用户名至少4个字符,最多10个字符",oncorrect:"该用户名可以注册"}).inputValidator({min:4,max:10,onerror:"用户名至少4个字符,最多10个字符"}).regexValidator({regexp:"username",datatype:"enum",onerror:"用户名格式不正确"})
.ajaxValidator({
type
:
"get",
url
:
"/ws/NameExist.aspx",
datatype
:
"json",
success
:
function(data){
if(
data
==
"1"
)
{
return
true;
}
else
{
return
false;
}
},
buttons:
$("#submit"),
error:
function(){alert("服务器没有返回数据,可能服务器忙,请重试");},
onerror
:
"该用户名不可用,请更换用户名",
onwait
:
"正在对用户名进行合法性校验,请稍候..."
})
NameExist.aspx
实现的源码
复制代码
代码如下:
protected
void
Page_Load(object
sender,
EventArgs
e)
{
string
accounts
=
Request["accounts"];
LoginNameExist(accounts);
}
public
void
LoginNameExist(string
accounts)
{
IUsers
user
=
AgileEIS.Web.DAL.Interface.DALHelper.DALManager.CreateUsers();
user.Session
=
ContextHelper.Session;
user.Accounts
=
accounts;
user.Refresh();
if
(!user.Exists)
{
Response.Write("1");
}
else
{
Response.Write("0");
}
Response.End();
return;
}
异步刷新实现方式有多种,也可以借助js的多种框架,以上是使用jquery框架实现的ajax
验证用户名是否存在。首次发这样的技术文档,难免有不足之外,还请大家见凉...
下面将提供下载
jquery调用ajax,调用后台方法判断用户名是否重复。验证的话,varusername=$("#username").val();if(username==""){returnfalse;}上面为验证不能为空
比如下面这个:
“用户的输入都是不可靠的”,忘了是哪位牛人说的这句话,所以对用户输入的数据进行检测是非常必要的。
以前我做客户端的检测都是一个属性写一个函数,我自己也觉得很不好,但也没有更好的办法,今天在一人blog里看到介绍jQuery的插件Validation,看了下,真的感觉很不错。jQuery提供的参数文档,这插件的作者提供的一些DEMO,下载地址在这里。
$.validator.setDefaults({
debug: true
});
设置默认的状态为debug,这样用户的数据就不会提交了。
接下来是一段比较长的代码,但是不用怕,因为真的挺简单的//当页面载入完成时,执行以下动作
$().ready(function() {
$("#myform").validate({
//设置默认的状态为keyup,也可以设置为blur
event: "keyup",
//设定规则
rules: {
//对应id为'username'的input
username: {
//必填项
required: true,
//最多和最少的字符数
rangeLength:[4,16]
},
mail: {
required: true,
//声明这是一个电子邮件
email: true
},
password: {
required: true,
//最少4个字符
minLength: 4
},
confirm_password: {
required: true,
minLength: 4,
// 与哪个等同,这里是id为password的input等同
equalTo: "#password"
},
agree: "required"
},
//这里是与规则对应的错误代码
messages: {
username: {
//如果用户名为空,则显示下面的信息
required: '请输入用户名',
//如果字符串的长度不符合,则显示下面的信息
rangeLength: '用户名必须在4-16个字符之间'
},
password: {
required: '请输入密码',
minLength: '密码必须大于4个字符'
},
confirm_password: {
required: '请确认你的密码',
equalTo: '两次密码输入不一致',
minLength: '密码必须大于4个字符'
},
agree: '请同意我们的条款',
mail: '请输入有效的E-MAIL帐户'
},
//可选项,当用户的输入符合我们设定的规则时显示
success: function(label) {
label.html('√').addClass("success");
}
});
});
/script
代码里写了注释,看起来应该还是比较容易理解的吧,最后就是一个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"密码确认:/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
$('#username').blur(function(){
$.ajax({
url:从数据库验证用户是否重复的action地址,
type:'POST',
data:{username:username},
dataType:'json',
success:function(jsonData){
if (jsonData == null) {
$(“#tips”).html('查询用户名列表错误');
}else if (jsonData.result == "true") {
$(“#tips”).html('用户名重复');
}else if(jsonData.result == "false") {
$(“#tips”).html('恭喜你,用户名可以使用');
}
},
error:function(jsonData){
}
});
});
表单的里面的有input这是输入框,name="username";
密码框的name是 password他们的对应的标签里面都先写一个id,分别是id="username",id="password".还有一个是确认提交的按钮。之后就是先导入jquery.js(这是js的库函数)。这个可以通过网络下载,
script
$("input[type="submit"]").click(
function(){
var username=$("#username").val();//获取用户名的信息;
var password=$("#password").val();//来获取密码的信息
之后就是你需要的验证的要求,
}
);
/script