У меня есть веб-приложение на C#, которое представляет пользователю отчеты, иногда отчеты занимают около нескольких минут, чтобы сгенерировать (а не несколько секунд).Можно ли отказаться или прервать RadAjaxRequest, который по-прежнему обрабатывается при создании нового запроса?
У меня есть RadTreeView
из «ReportType
» ссылки, при нажатии выполняет RadAjaxRequest
с помощью RadAjaxManager
от клиентской стороны.
function RadTreeviewNodeClicked(sender, eventArgs) {
try {
console.log("fired again: " + eventArgs.get_node().get_text());
var radAjaxManager = $find("<%= RadAjaxManager.GetCurrent(Page).ClientID %>");
radAjaxManager.ajaxRequest("NodeClicked");
} catch (error) {
console.log("error on nodeclicked");
}
}
//from my pageload
radAjaxManager1 = RadAjaxManager.GetCurrent(Page);
radAjaxManager1.AjaxRequest += RadAjaxManager1_AjaxRequest;
radAjaxManager1.ResponseScripts.Add("AttachJQueryUIDateTimePickers();");
radAjaxManager1.AjaxSettings.AddAjaxSetting(radAjaxManager1,pnlRightContent,RadAjaxLoadingPanel1);
radAjaxManager1.ClientEvents.OnResponseEnd = "ResponseEnd";
ajaxRequest
обработчик на сервере нагрузки до соответствующего отчета по ссылке, которая была нажата, и отображает ее на правой стороне в качестве осины: панели. Меню и панель оба обернуты в RadAjaxPanel
.
Если данные отчета еще грузятся (хранимая процедура выполняется), и пользователь нажимает другую ссылку:
- событие клиента срабатывает
- сервера завершает первое событие
- в respondeEnd событие вызывается
- сервер начинает обработку 2-й событие
Я хотел бы aband on/abort первое событие при нажатии на последующее событие. Это возможно?
Моя страница была RadAjaxManagerProxy, не видел свойство там. Я нашел его на RadAjaxPanel, который использовал, но установка его на 0 не отменяет запрос ajax для меня. Кажется, он все еще ждет, пока он вернется, прежде чем он обработает мое перенаправление – unnknown