服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

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

2019-09-06 13:17asp.net之家 ASP.NET教程

关于Ajax的操作简单总结,结合Ajax验证用户名是否存在的代码

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); 


}); 

}); 
}); 

延伸 · 阅读

精彩推荐