1, 使用JavaScriptjs文件,验证用户名是否存在
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); } }); }); });