<asp:TextBox ID="username" runat="server"></asp:TextBox>
<input type="button" name="check" value="唯一性检查" onClick="userCheck()">
<input type="button" name="check" value="唯一性检查" onClick="userCheck()">
第二.在HTML中插入以下JAVASCRIPT代码。
<script language="javascript">
var http_request = false;
function send_request(url)
{//初始化、指定处理函数、发送请求的函数
http_request = false;
/**////alert("1");
//开始初始化XMLHttpRequest对象
if(window.XMLHttpRequest)
{ //Mozilla 浏览器
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType)
{//设置MiME类别
http_request.overrideMimeType('text/xml');
}
}
else if (window.ActiveXObject)
{ // IE浏览器
try
{
http_request = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e)
{}
}
}
if (!http_request) { // 异常,创建对象实例失败
window.alert("不能创建XMLHttpRequest对象实例.");
return false;
}
http_request.onreadystatechange = processRequest;
// 确定发送请求的方式和URL以及是否同步执行下段代码
http_request.open("GET", url, true);
http_request.send(null);
}
// 处理返回信息的函数
function processRequest() {
if (http_request.readyState == 4) { // 判断对象状态
if (http_request.status == 200) { // 信息已经成功返回,开始处理信息
alert(http_request.responseText);
} else { //页面不正常
alert("您所请求的页面有异常。");
}
}
}
function userCheck()
{
var username = document.getElementById("username").value;
if(username=="")
{
window.alert("用户名不能为空。");
f.username.focus();
return false;
}
else {
send_request('Back.aspx?username='+username);
}
}
</script>
var http_request = false;
function send_request(url)
{//初始化、指定处理函数、发送请求的函数
http_request = false;
/**////alert("1");
//开始初始化XMLHttpRequest对象
if(window.XMLHttpRequest)
{ //Mozilla 浏览器
http_request = new XMLHttpRequest();
if (http_request.overrideMimeType)
{//设置MiME类别
http_request.overrideMimeType('text/xml');
}
}
else if (window.ActiveXObject)
{ // IE浏览器
try
{
http_request = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e)
{}
}
}
if (!http_request) { // 异常,创建对象实例失败
window.alert("不能创建XMLHttpRequest对象实例.");
return false;
}
http_request.onreadystatechange = processRequest;
// 确定发送请求的方式和URL以及是否同步执行下段代码
http_request.open("GET", url, true);
http_request.send(null);
}
// 处理返回信息的函数
function processRequest() {
if (http_request.readyState == 4) { // 判断对象状态
if (http_request.status == 200) { // 信息已经成功返回,开始处理信息
alert(http_request.responseText);
} else { //页面不正常
alert("您所请求的页面有异常。");
}
}
}
function userCheck()
{
var username = document.getElementById("username").value;
if(username=="")
{
window.alert("用户名不能为空。");
f.username.focus();
return false;
}
else {
send_request('Back.aspx?username='+username);
}
}
</script>
在此补充一下昨天没有说到的HTTPRequest一个很重要的函数,就是:
http_request.responseText//返回客户端的信息。
第三:建立一个名字为Back.aspx的页面,删掉所有的HEML代码,只剩下页面的注册信息。
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Back.aspx.cs" Inherits="Back" %>
第四:在Back.cs的Page_Load里写上以下代码:
if (Request.QueryString["username"].ToString().Trim() != "")
{
Response.Write(Request.QueryString["username"].ToString().Trim());
}
运行就OK了。(你看看点了运行按钮之后浏览器后退按钮是不是是灰的呀,如果是的话,恭喜你你的第一个AJAX程序成功了)
{
Response.Write(Request.QueryString["username"].ToString().Trim());
}