jquery调用ajax在ie10以下浏览器调用失败解决方案

2024年07月24日 建站教程

最近做了一个项目,需要兼容ie9浏览器,但是ajax接口就是进不了success,每次都是走catch通道,切换到ie10就能成功执行,最后找到了解决方法!

原因分析:

针对“拒绝访问”是由于浏览器安全机制导致的。

为点击IE浏览器的的“工具->Internet 选项->安全->自定义级别”将“其他”选项中的“通过域访问数据源”选中为“启用”或者“提示”,点击确定就可以了!

上面的虽然可以,但是不太现实!!!

解决办法:

解决ajax时出现No Transport,在使用ajax之前添加:

jQuery.support.cors = true //就是这一行代码

//下面写上封装的方法
function ajax(apiType, url, data, type) {
  return $.ajax({
  	url: apiUrl + url,
  	data: data,
  	type: type,
  	contentType: 'application/json',
  	headers: {},
  	success: function(res) {
  	  if (res && res.code == 10000) {
  	  	return res
  	  } else {
  	  	message(res.message)
  	  	return
  	  }
  	},
  	error: function(e) {
  	  if (typeof e == 'undefined' || strToJson(e.responseText) == 'undefined') {
  	  	message('服务器错误,请联系相关人员!')
  	  }else{
  	  	message(JSON.parse(e.responseText).message)
  	  }
  	}
  });
}

本文链接:http://so.lmcjl.com/news/9098/

展开阅读全文
相关内容