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