//Ajax异步HTTP请求组件
//用法：new Ajax(callBack[,"xml"]).method(url[,content]);
//callBack为回调函数，需要包含一个参数，表示相应的返回信息
//xml是可选的参数，只能使用"xml"，不区分大小写，表示回调函数处理的http返回信息是dom对象，
//如果不指定xml参数，则表示回调函数处理的http返回信息是文本对象
//method表示请求方法，可以是get或post
//content参数为可选参数，如果使用post方法，可以指定content参数，表示提交的内容
//如果使用get方法，即使指定的content参数，content内容也会被忽略
//如果需要自行处理http请求错误，则可以设定错误处理回调函数
//通过setErrCallBack设定，函数定义不要指定参数。

if(!String.prototype.matches){
String.prototype.matches = function(pattern,flag){
return (new RegExp(pattern,flag)).test(this);
}
}
function Ajax(callBackFun,isXml){
//http异步请求对象
var http = false;
//是否是xml DOM对象回调
var isXmlCallBack = ((isXml) && (isXml.matches("xml","i")));
//成功处理的回调
var callBack = callBackFun;
//发生错误的回调
var errCallBack = false;
//设置成功处理的回调
this.setCallBack = function(callBack){
callBack = callBack;
return this;
};
//设置发生错误的回调
this.setErrCallBack = function (callBack){
errCallBack = callBack;
return this;
};
//私有初始化方法
var init = function(){
if(window.XMLHttpRequest) { //Mozilla 浏览器
http = new XMLHttpRequest();
http.overrideMimeType("text/xml");
}else if (window.ActiveXObject) { // IE浏览器
try {
http = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
http_request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {}
}
}
http.onreadystatechange = function(){
if (http.readyState == 4) { // 判断对象状态
if (http.status == 200) { // 信息已经成功返回，开始处理信息
if(isXmlCallBack){
callBack(http.responseXML);
}else{
//callBack(http.responseText);
//alert(http.responseText);
callBack(http.responseText);

}
}else{
if(errCallBack){
errCallBack();
}else{
alert("请求处理错误");
}
}
}
}
};
//私有发出请求的方法
var request = function(method,url,content){
//alert(method + " " + url + " " + content);
init();
if(http){
/*if(!url.matches("^http://","i")){
url = "http://" + url;
}*/
http.open(method,url,true);
http.setRequestHeader("If-Modified-Since","0");
if(content){
http.send(content);
}else{
http.send(null);
}
}else{
alert("此浏览器不支持异步HTTP请求。");
}
};
//共有get方法
this.get = function(url){
request("GET",url);
};
//共有post方法
this.post = function(url,content){
request("POST",url,content);
};
};
var tempcontent="空";
var BOBJ
function callBackHtml(content){

BOBJ.innerHTML="<div><img src='images/space.gif' class=row_space  ></div>"+content;
}
function callBackHtml2(content){
//alert("1");
if(content==0){
	BOBJ.innerHTML="<b><img src='images/yesno.gif' width='16' height='16' border='0' />"+restrtemp+"格式不对</b>";
	BOBJ.style.color="#FF0000";
	//BOBJ.style.font="bold";
	}
else if(content==1)
{
	BOBJ.innerHTML="<b><img src='images/yesno.gif' width='16' height='16' border='0' />"+restrtemp+"已被注册</b>";
	BOBJ.style.color="#FF0000";
	}
else{
	BOBJ.innerHTML="<b><img src='images/yesok.gif' width='16' height='16' border='0' /></b>"
	BOBJ.style.color="#00FF00";
	//BOBJ.style.font="bold";
	}
//BOBJ.innerHTML=content;
}
function callBackHtml3(content){

BOBJ.innerHTML=content;
}
function callBackValue(content){
BOBJ.value=content;
}

function getHtmlToHtml(url,obj){

BOBJ=obj;
new Ajax(callBackHtml).get(url);

}
function getHtmlToHtml2(url,obj){

BOBJ=obj;
new Ajax(callBackHtml2).get(url);

}
function getHtmlToHtml3(url,obj){

BOBJ=obj;
new Ajax(callBackHtml3).get(url);

}
function getHtmlToValue(url,obj){
BOBJ=obj;
new Ajax(callBackValue).get(url);
}


//或者1
//new Ajax(callBack).post(url,postContent);
