我的base.master中有一个全局的ajaxError事件,类似这样的
$(document).ajaxError(function(event, request, settings,thrownError) {
$("#results").append( "<li>some error msg.</li>" );
});
但我不想使用&#34;#results&#34;。我希望它是动态的。我希望该函数始终在update-target元素中显示错误消息。如何在错误事件中找到我的ajax调用中使用的UpdateTarget Id?感谢。
using (Ajax.BeginForm("action", null,
new AjaxOptions {
UpdateTargetId = "results", <--find this element in my error event
LoadingElementId = "loading",
答案 0 :(得分:1)
我不熟悉ASP,但ajaxError
会收到在恰当命名的ajax
变量中传递给settings
方法的所有设置。
所以如果你有这样的AJAX调用:
$.ajax({
url: '/some/url.asp',
data: myData,
resultsEle: $('#myResults')
});
您可以像resultsEle
这样访问ajaxError
:
$(document).ajaxError(function(event, request, settings, thrownError) {
settings.resultsEle.append( "<li>some error msg.</li>" );
});
同样,我不熟悉你在ASP代码中调用AJAX方法的方式,但我猜你可以通过这种方式获取元素:
$(document).ajaxError(function(event, request, settings, thrownError) {
$('#'+settings.UpdateTargetId).append( "<li>some error msg.</li>" );
});