Jquery的ajax方法跳入error引发的一系列问题

今天,遇到一个很奇怪的问题:本地开发时,用jquery的ajax方法写了个功能,测试时并没有出现任何问题。奇怪的是,发布到IIS上,再测试就跑不通了,总会跳入error属性。

排除了url,data格式等原因,怀疑是contentType的值设置错误。百度找contentType属性的可选值(http://blog.csdn.net/qlcql/article/details/51206972),各种改,结果依旧不可行。

最后终于开窍,查阅了一下为什么会跳入error属性(http://www.cnblogs.com/calamus/p/5794700.html),然后按照介绍,在error属性的function里加上了三个参数XMLHttpRequest,textStatus,errorThrown。然后执行,此时XMLHttpRequest参数是一个对象,textStatus空值,errorThrown却是undefined。

不过没关系,在XMLHttpRequest对象中,拿到了错误信息(是一个页面的html码),拿出来这个码,用浏览器打开后如下:

Jquery的ajax方法跳入error引发的一系列问题_第1张图片

至此,可算是知道为什么出错了!正如图中箭头所指,因为字符串“
”为html的标签代码,被IIS的检测为危险值,所以不予通过。恰好,由于我这边的需求中,这个html代码不是必须要作为参数传给服务器端的,所以,我将准备通过data属性传入后台的参数内的“
”删掉了。

而如果这样的html代码必须要作为参数传给后台,则可以采用该链接内提供的解决方案(http://www.cnblogs.com/youring2/p/3559781.html)。

你可能感兴趣的:(JS,.NET-C#)