ajax提交 Failed to load resource: the server responded with a status of 400 ()

遇上这个错误就有点头疼,代码量又不大,又不好解决,但是出现这个错误一定是你代码写的有问题.

直接贴码,

#debugger //断点调试 在浏览器执行某个功能前按F12开启断点
$.ajax({
	type: "POST",
	url: '${ctx}/meetingtopicdatum/navigation_del',  //1
	data: {"ids":chk_array.toString()},              //2
	dataType: "json",                                //3
	success: function (result) {
		if (result == 1) {
			bootbox_dialog("删除成功!","确定");
			topic_datums_load();
		} else {
			bootbox_dialog("删除失败!","确定");
		}
        }
});

我觉得最容易弄错的地方是注释的1,2,3步

第1 url的问题 :ajax提交到后台,看看路径有没有问题,后台打个断点调试下

第2 参数的问题 : 参数问题应该是最难发现的,因为js对象引用都是弱类型,比如后台接收的是int类型,而参数是string类型就会报错,还有后台接收日期类型,数组等等也容易出错,所以需要前端调试,在需要被调试的代码加 #debugger 就行,如果不断点把参数打印出来查看也可以(console.log('参数'))。

第3 数据类型格式 :这一块也要注意 前台传json格式数据,后台用字符串格式进行接收也不行的。


总结:遇到问题淡定,学会排错法. ajax出现最多的是传参问题,最好后台都接受为String类型参数,前台不用处理,在后台处理方便点。 还有不要当copy大神,有些问题就是你copy代码出来的,没出问题还好,出了问题还是得自己理解代码找错误。


猜你喜欢

转载自blog.csdn.net/hqbootstrap1/article/details/80999195