页面加载Ajax请求IE浏览器未执行

记一次开发过程中遇到的坑
话不多说,直接上代码

前台Ajax代码

$(function () {
            $.ajax({
                url: "warning/info",
                type: "post",
                cache: false,
                success(data) {
     				$('#overdueExecution').text(data.overdueExecution);
                    $('#sgOverdue').text(data.sgOverdue);
                    $('#wgOverdue').text(data.wgOverdue);
                }
            })
        })

后台代码

@Controller
@CrossOrigin(origins = "*",maxAge = 3600) // 解决跨域问题
@RequestMapping("/system/warning")
public class WarningController extends BaseController {
	
	private String prefix = "system/warning";

    @Autowired
    private IEarlyService earlyService;
    
	@PostMapping("/info")
    @ResponseBody
    public Map info(){
    	startPage();
        List<OverTimeWarning> list = earlyService.selectOverTimeWarningInfo();
        return JSON.toJSONString(list);
    }
}

进入页面查看未执行该方法(IE无效,谷歌正常)

IE浏览器可以看到页面并未加载 info 方法
谷歌正常加载

问题排查

一开始以为是IE浏览器缓存问题,在Ajax url后添加时间用来确保每次请求都是从服务器上获取,但是发现好像并没有什么卵用,页面根本就未加载该方法,还有说是页面加载了俩个jquery,但我的页面只有一个jquery(排除)

再一次在页面进行查看,发现有一个SCRIPT1003: 缺少 ':'的错误

页面报错
查看ajax success 发现IE浏览器不支持这种写法,需要加上success:function(data) 如下:

$(function () {
            $.ajax({
                url: "warning/info",
                type: "post",
                cache: false,
                success:function(data) {
                    $('#overdueExecution').text(data.overdueExecution);
                    $('#sgOverdue').text(data.sgOverdue);
                    $('#wgOverdue').text(data.wgOverdue);
                }
            })
        })

重新运行项目,报错消失,页面正确加载数据

正确加载该方法并返回对应数据

记录在开发过程中遇到的坑,有需要的小伙伴可以参考,避免入坑,不得不说谷歌是真的强

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值