我有一个带有以下catch语句的控制器,它返回一个部分视图和要显示的错误。
catch (Exception ex)
{
return PartialView("ErrorPartial", new ErrorModel(ex));
}
通过像这样的Ajax调用来调用这个控制器......
$('#myID').ajaxSubmit({
url: buildUrl('MyController'),
beforeSubmit: function () {
toggleOverlay(true, 'Saving...');
},
success: function (responseText, statusText, xhr) {
successSave(responseText, statusText, xhr)
},
error: function (jqXHR, textStatus, errorThrown) {
}
});
如果捕获到异常,则代码会进入错误块,但是我无法将部分视图数据传递给它。
无论如何,我可以将部分数据传递到错误块吗?如果没有,你可以推荐一个替代方案吗?
谢谢:)
答案 0 :(得分:0)
您可能正在寻找jqXHR.responseText
。但是,对我来说不清楚为什么你的js代码失败进入错误块 - 你已经处理了异常,所以ajax请求应该被认为是成功的,并且应该触发成功函数。这是我的C#代码导致ajax请求失败但传递数据和错误。
Response.StatusCode = (int)System.Net.HttpStatusCode.BadRequest;
return PartialView("SomePartialView", model);