2012-03-20 2 views
1

У меня есть список, который необходимо обновить после добавления комментария. Представление обрабатывается через jquery, и я хочу активировать обновление после успешного отправки комментария. Анимация была бы приятной, я надеялся, что есть простое решение. Я попытался вызвать метод страницы, чтобы принудительно перестроить, но он должен быть статичным, полностью потерял меня, поскольку я не могу напрямую обращаться к элементу управления. любая помощь? tiaКак восстановить функцию listview datasource из jquery?

+0

Привет, сделал одно из наших ответов вам помочь? Если нет, дайте мне знать, как я могу помочь. – msigman

ответ

1

Поскольку listview является контролем на стороне сервера, его можно будет восстановить только после обратной передачи. Один из способов, я сделал это в прошлом, поставить скрытую кнопку «Обновить» на странице

<asp:button runat="server" id="btnRefresh" onclick="ReBindListView" style="display:none;" /> 

И затем использовать JavaScript, чтобы вызвать обратной передачи

function refresh() { 
     __doPostBack('<%= btnRefresh.ClientID %>', ''); 
} 

на стороне сервера из btnRefresh нажмите, затем вы можете перегруппировать свой список.

+0

Нет; вы можете восстановить его с помощью JavaScript. – msigman

+0

@msigman Функция «refresh» javascript на самом деле вызывает обратную передачу и вызывает процедуру RebindListView на стороне сервера. –

+0

Ваше решение умное! В теме PostBack я не уверен. Это делает .NET PostBack или он делает вызов JQuery AJAX на сервер для получения данных? Вы, вероятно, правы, это делает PostBack внутренне. Но, по крайней мере, с использованием предопределенного JavaScript 'rebind()' метод немного проще, потому что он не требует создания скрытой кнопки. – msigman

0

Вы можете восстановить свой RadListView в любое время, чтобы обновить его новыми комментариями. Вот пример:

<telerik:RadCodeBlock ID="RadCodeBlock1" runat="server"> 
    <script type="text/javascript"> 
     function RefreshRadListView() { 
      var listView = $find("<%= RadListView1.ClientID %>"); 
      listView.rebind(); 
     } 
    </script> 
</telerik:RadCodeBlock> 

http://www.telerik.com/help/aspnet-ajax/listview-rebind.html

Смежные вопросы