Почему частичное представление Asp.net не возвращается обратно? - PullRequest
2 голосов
/ 30 августа 2011

Я новичок и только начал изучать asp.net mvc, когда проходил учебник по частичному просмотру и создал небольшое тестовое приложение, которое работает нормально.

У меня есть страница сзаказ клиента, и каждый элемент имеет кнопки редактирования для добавления или удаления элементов, и, нажав на него, я могу увеличить элемент или удалить элемент из корзины.И для такого действия я использую

 HTML.actionlink("+", "AddToCart", "Orders", new { orderid=tempcart.orderid }, 
 new AjaxOptions()      
 { 
      OnBegin = "showplaces", 
      OnSuccess = "hideloader" 
 }, null); 

, поэтому, когда я нажимаю кнопку, она переходит к действию AddToCart () и обновляет таблицу в базе данных, но она не обновляет частичное представление, и loader.gif остаетсянавсегда на странице и не вызывайте функцию hideloader ().

Подскажите, пожалуйста, в чем проблема?

1 Ответ

3 голосов
/ 30 августа 2011

1 - первый пользователь Ajax.ActionLink при обновлении частичного представления

2 - Кроме того, можно указать идентификатор корзины, чтобы она могла обновляться после завершения действия.

3 - Однажды у меня была такая проблема, поэтому я сделал следующее:

добавить атрибут OnFailure в Ht

Ajax.ActionLink("+", "AddToCart", "Orders", new { orderid=tempcart.orderid }, 
 new AjaxOptions()      
 { 
      UpdateTargetId = "cart_divId", 
      OnBegin = "showplaces",
      OnFailure = "ShowDOMExcep", 
      OnSuccess = "hideloader" 
 }, null); 

и используйте этот метод для получения исключения DOM:

function ShowDOMExcep(context) {

    var html = context.get_data();
    var placeholder = context.get_updateTarget();
    $(placeholder).html(html);
    return false;
}

надеюсь, это поможет ...

...