firefox不支持Ajax的问题

2024-11-22 13:31:34
推荐回答(4个)
回答1:

给个兼容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);

*/

下面再给个实例::




ceshi.html






用户名:


密码:



  








尊敬的    XXX
先生



此次是你第  XX  次 登录网上银行

您上次登录网上银行的时间是:



2000/10/09  21:23:03



注意:
1、本代码使用到ajax的相关知识;主要是创建IE和火狐浏览器后兼容的ajax(),原来是实现无刷新登录的,修改了下下
2、必须指定存在且在同一域里的url地址(按你自己的情况,修改url = "index.php";
3、点击提交按钮即可,现在的提交按钮只是普通的按钮button

回答2:

  您好!很高兴为您答疑!

  Firefox支持Ajax,但您前面声明的变量一直是req,最后的变量又声明到this.http_request。您可以使用Firebug检测下。
  您可以在火狐社区了解更多内容。希望我的回答对您有所帮助,如有疑问,欢迎继续在本平台咨询。

回答3:

我不会Ajax编码,但是我知道Firefox是支持Ajax的。

回答4:

前面声明的变量一直是req,最后的变量声明到this.http_request,然后不知道您具体请求里面使用的什么变量