MVC TIP5:JQuery AJAX错误捕获
来源:广州中睿信息技术有限公司官网
发布时间:2012/10/21 23:25:16 编辑:admin 阅读 457
在上一篇《MVCTIP4:为捕获路由及通用异常处理》里,我们讲了如何捕获MVCWEB站点的未捕获异常,这里我们还要解决一个问题,就是JQueryAjax异常的捕获。Ajax异常的捕获仍旧需要借助于全

在上一篇《MVC TIP4:为捕获路由及通用异常处理》里,我们讲了如何捕获MVC WEB站点的未捕获异常,这里我们还要解决一个问题,就是JQuery Ajax异常的捕获。Ajax异常的捕获仍旧需要借助于全局的ErrorController控制器,及其视图,在Views的Error文件夹下的Index视图。

我们知道,一个Ajax调用,通常像如下的形式:

image

如果调用出错,也就是调用CityController控制的GetProvince方法出错,假设throw new Exception(“出错啦”);。那么图中2处返回的就是Index.aspx的整个静态化HTML,查看Index.aspx:

image

其整个静态化的HTML,将会包含很多内容。当然其中也包括了我们需要的Exception的Message,我们仅仅需要这部分的内容。

于是我们首先需要在出错视图中定义一个ErrorMsg的ID,见图中。然后,我们的JQuery编码如下:

var $errorPage = XmlHttpRequest.responseText;
alert($("#ErrorMsg", $errorPage).text());
//alert($("#ErrorMsg", XmlHttpRequest.responseText).text());

注意,我们也可以拿注释掉的那行代码来代替。整体意思就是取出XmlHttpRequest.responseText,然后查找到ErrorMsg,然后显式出来。

.thick {font-weight: bold} #thick1 {font-weight: bold}
职业指导:
在使用某一技能三个月后,你还不是专家,即便使用时间是三年,你还不是。马尔科姆·格莱德威尔在《异类》一书中指出,成为一名真正的专家,需要10000小时。10000小时!如果一天用10小时,每天都学习,则大概需要3年时间。如果一天5小时,一年学习200天,则大概需要10年时间。10年!
联系我们CONTACT 扫一扫
愿景:成为最专业的软件研发服务领航者
中睿信息技术有限公司 广州•深圳 Tel:020-38931912 务实 Pragmatic
广州:广州市天河区翰景路1号金星大厦18层中睿信息 Fax:020-38931912 专业 Professional
深圳:深圳市福田区车公庙有色金属大厦509~510 Tel:0755-25855012 诚信 Integrity
所有权声明:PMI, PMP, Project Management Professional, PMI-ACP, PMI-PBA和PMBOK是项目管理协会(Project Management Institute, Inc.)的注册标志。
版权所有:广州中睿信息技术有限公司 粤ICP备13082838号-2