欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

asp.net结合Ajax验证用户名是否存在的代码

程序员文章站 2024-03-31 19:28:52
1, 使用javascript js文件,验证用户名是否存在 复制代码 代码如下: var ajax = function(option) { var request; v...
1, 使用javascript js文件,验证用户名是否存在
复制代码 代码如下:

var ajax = function(option)
{
var request;
var createrequest = function()
{
//var request;
if (window.xmlhttprequest)
{
request = new xmlhttprequest();
}
else
{
try
{
request = new activexobject("microsoft.xmlhttp");
}
catch (e)
{
request = new activexobject("msxml2.xmlhttp");
}
}
return request;
}
var sendrequest = function()
{
request = createrequest();
/*---------get 和 post的区别------------
1、 get是把参数数据队列加到提交表单的action属性所指的url中,值和表单内各个字段一一对应,在url中可以看到。
post是通过http post机制,将表单内各个字段与其内容放置在html header内一起传送到action属性所指的url地址。用户看不到这个过程。
2、 对于get方式,服务器端用request.querystring获取变量的值,
对于post方式,服务器端用request.form获取提交的数据。
两种方式的参数都可以用request来获得。
3、 get传送的数据量较小,不能大于2kb。
post传送的数据量较大,一般被默认为不受限制。
4、 get安全性非常低,post安全性较高。
5、 当我们在提交表单的时候我们通常用post方式,当我们要传送一个较大的数据文件时,需要用post。
当传递的值只需用参数方式(这个值不大于2kb)的时候,用get方式即可。
*/
request.open("get", option.url, true);
//request.open("post", option.url, true);
//发送请求之前设置该属性,获取服务器上的准备状态
request.onreadystatechange = responserequest;
request.send(null);
}
/*
request.readystate == 4说明服务器已经收到一个响应
request.status == 200,http服务器响应的状态值,表示一切顺利
http的就绪状态
0:请求没有发出(在调用 open() 之前)。
1:请求已经建立但还没有发出(调用 send() 之前)。
2:请求已经发出正在处理之中(这里通常可以从响应得到内容头部)。
3:请求已经处理,响应中通常有部分数据可用,但是服务器还没有完成响应。
4:响应已完成,可以访问服务器响应并使用它。
*/
var responserequest = function()
{
alert("http的就绪状态: "+request.readystate);
if (request.readystate == 4)
{
if (request.status == 200)
{
alert("一切顺利!");
option.success(request);
}
else
{
alert("出现错误,错误信息为: "+request.status);
option.failure(request);
}
}
}
sendrequest();
}
//判断输入的数值是否存在
function getis()
{
/*
1,url是要链接的页面和传过去的值,传过去值,让动态页面执行
2,default.aspx为要为这个执行的页面
3,name是传过去的参数名
4,document.getelementbyid('text1').value传过去的参数值
5,message.responsetext成功之后从服务端返回的消息
*/
var option =
{
url: "default.aspx?name="+document.getelementbyid('text1').value,
success:function(message)
{
alert(message.responsetext);
}
};
new ajax(option);
}

aspx文件
复制代码 代码如下:

if (request["name"] != null)
{
this.response.clear();
string name = request["name"].tostring();
if (name == "1")
{
response.write("用户名已存在,请填写其他的用户名!");
}
else
{
response.write("该用户名没被注册,可以使用!");
}

this.response.end();
}

2, 通过jquery实现:
复制代码 代码如下:

$(document).ready(function(){
$("#button1").click(function(){
$.ajax({
type:"get",
url:"responsepage.aspx?name="+document.getelementbyid('text1').value,
success:function(message) {
alert(message);
}

});

});
});