给个兼容FF和IE的代码函数
//兼容IE和FF的ajax
function Ajax(){
var _xmlHttp = null;
this.createXMLHttpRequest = function(){
try {
if (window.ActiveXObject) {
_xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} else if (window.XMLHttpRequest) {
_xmlHttp = new XMLHttpRequest();
}
}catch(e){
alert(e.name +" : " + e.message);
}
}
this.backFunction = function(_backFunction){
if(_xmlHttp.readyState == 4) {
if(_xmlHttp.status == 200) {
_backFunction(_xmlHttp.responseText);//这里可以设置返回类型
}
}
_xmlHttp.onreadystatechange = null;
}
this.doPost = function(_url,_parameter,_backFunction){
try {
_xmlHttp.open("POST",_url, false);
_xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
_xmlHttp.send(_parameter);
} catch(e) {
alert(e.name +" : " + e.message);
}
}
this.doGet = function(_url,_parameter,_backFunction){
try {
var _random = Math.round(Math.random()*10000);
_xmlHttp.open("GET", (_url+"?random=" +_random +"&" + _parameter), false);
_xmlHttp.send(null);
} catch(e) {
alert(e.name +" : " + e.message);
}
}
this.ajaxRequest = function(_url,_parameter,_method,_backFunction){
try{
this.createXMLHttpRequest();
if(_method.toLowerCase() == "post"){
this.doPost(_url,_parameter,_backFunction);
} else {
this.doGet(_url,_parameter,_backFunction);
}
try {
_xmlHttp.onreadystatechange = this.backFunction(_backFunction);
} catch(err) {
//??????IE?????????????????
}
} catch(e) {
alert(e.name +" : " + e.message);
}
}
}
/*
var url = "index.php";
var parameter = "parameter=parameter"; //这个使发送的参数
var method = "GET"
function callBack(text){ //处理返回的数据
.... ajax函数使用示例
}
new Ajax().ajaxRequest(url,parameter,method,callBack);
*/
下面再给个实例::
您好!很高兴为您答疑!
Firefox支持Ajax,但您前面声明的变量一直是req,最后的变量又声明到this.http_request。您可以使用Firebug检测下。
您可以在火狐社区了解更多内容。希望我的回答对您有所帮助,如有疑问,欢迎继续在本平台咨询。
我不会Ajax编码,但是我知道Firefox是支持Ajax的。
前面声明的变量一直是req,最后的变量声明到this.http_request,然后不知道您具体请求里面使用的什么变量