AJAX无刷新联动,IE正常,在火狐无法实现

talenliao talenliao 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
function send_request(method,url,content,responseType,callback){
http_request=false;
if(window.XMLHttpRequest){//Mozilla浏览器
http_request=new XMLHttpRequest();
if(http_request.overrideMimeType){
http_request.overrideMimeType("text/xml");
}
}
else{
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;
}
if(responseType.toLowerCase()=="text"){
http_request.onreadystatechange=callback;
}else{

window.alert("响应类别参数错误。");
return false;
}
if(method.toLowerCase()=="get"){
http_request.open(method,url,true);
}
else if(method.toLowerCase()=="post"){
http_request.open(method,url,true);
http_request.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
}else{
window.alert("http请求类别参数错误。");
return false;
}
http_request.send(content);
}
这个是主要的ajax代码了

下面是取得城市数据的 function change(va)
{

if(va!='0')
{
var city = document.getElementById("City");
city.disabled=false;

var url="Handler.ashx?type=sheng&id="+va;
send_request("GET",url,null,"text",populateClass3);
}
}
function populateClass3(){
var f=document.getElementById("City");
if(http_request.readyState==4){
if(http_request.status==200){
var list=http_request.responseText;
var classList=list.split("|");
f.options.length=1;
for(var i=0;i<classList.length;i++){
var tmp=classList[i].split(",");
f.add(new Option(tmp[1],tmp[0]));
}
}else{
alert("您所请求的页面有异常。");
}
}
}
在IE很正常,可是在火狐就 一点用都没有,没有出现联动事件。
...全文

相关推荐

IE9下Ajax无法刷新数据的缓存问题解决方法

使用jQuery的getJSON从后台定时获取数据并刷新界面,在IE9下却无法刷新数据,原因就是缓存的问题,下面是解决方法

weixin_38550459

ajax中的IE和火狐的区别

附件里面是一篇关于ajax兼容性问题处理技术文档

张碣瑾

IE8用ajax访问不能每次都刷新的问题

AJAX简介 AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)。 AJAX 不是新的编程语言,而是一种使用现有标准的新方法。 AJAX 是与服务器交换数据并更新部分网页的艺术,在不重新加载整个页面的情况下。 IE8用ajax访问不能每次都刷新的问题介绍如下: 最近发现,用ajax访问后台,用ie8访问,第一次可以正常返回值,后面就一直不会执行后台,总是返回第一次访问的结果。 用ie9,ie10等都没问题,chrome,等浏览器也没有问题。 测试后发现,是ie8缓存了第一次获取的结果,所以第二次不会提交到后台。

weixin_38569569

Ajax+Servlet实现无刷新下拉联动效果

下拉联动的功能可以说非常的常用,例如在选择省、市等信息的时候;或者在选择大类、小类的时候。总之,下拉联动很常用。今天就跟大家分享一个简单的二级下拉联动的功能。 大类下拉框:页面加载的时候就初始化大类的下拉选项,通过后台代码去数据库里面取得数据(当然像省市这样不变的内容可以直接给值),然后加载到下拉选项中。 &lt;select name=region class=select1 id=BigClass onchange=selectProv(this)&gt; <option value=0>--全部--</option> &lt;&#37; Map map = ClientM

weixin_38520046

ajax页面无刷新 IE下遭遇Ajax缓存导致数据不更新的问题

在做ajax页面无刷新添加的时候,IE下遭遇Ajax缓存,因为刚开始并不知道IE有这个坏毛病,折腾好久,终于解决问题。 总结一下解决办法: 在IE下用Ajax请求某一页面,通常会因为缓存的原因而返回上一次的结果,造成混乱,[即get方式时,获取数据,因发送参数和地址都一致,故IE浏览器会从缓存中取,而不会去请求服务器端,而post方式因为参数的不同,不会产生这个问题]而FF下不会出现这种情况。为了不受缓存影响,可以这样做: IE访问策略: Internet选项–浏览历史记录–设置– Internet 临时文件的选项改为每次访问网页时也可以 1: 在AJAX请求的页面后加个随机函数,我们可以使用

weixin_38680506
评论 42
收藏 已收藏
分享
返回顶部
talenliao
.NET社区 62,273 成员 668,968 内容