2015-11-14 10 views
0

RadAjaxLoadingPanel не работает с DNN

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

Теперь щелчок на кнопке с изображением вызывает обратную передачу страницы, я не хочу обратной передачи для этого, поэтому я поместил telerik RadAjaxLoadingPanel control, поэтому крутой загрузочный div отображается во время обработки, но по какой-то причине это не рабочий,

он всегда бросает под ошибкой:

Please, see whether wrapping the code block, generating the exception, within RadCodeBlock resolves the error. 

ниже приведена разметка моей страницы: (я попробовал оборачивать код с RadScriptBlock и RadCodeBlock, в обоих случаях он выдает ту же ошибку, как указано выше)

<telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" runat="server" Skin="Default"> 
       </telerik:RadAjaxLoadingPanel> 
       <telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server" LoadingPanelID="RadAjaxLoadingPanel1"> 
       <telerik:RadScriptBlock ID="RadScriptBlock1" runat="server"> 
       <a class="subscribetoday" href="#"> 
        <strong>Subscribe Today!</strong> <asp:Label ID="lblsubscribemsg" runat="server" Text="12 issues for $14.95"></asp:Label> 
<asp:ImageButton ID="imgEditSubscribe" runat="server" 
              OnClick="imgEditSubscribe_Click" ToolTip='Edit' ImageUrl="~/images/edit.gif" AlternateText='Edit' Visible="false" /> 
       <div id="editsubscribe" runat="server" visible="false"> 
        <asp:TextBox ID="txtSubscribe" runat="server"></asp:TextBox> <asp:ImageButton ID="imgSave" runat="server" 
              OnClick="imgSave_Click" OnClientClick="return validateSubscribeNote();" ToolTip='Save' ImageUrl="~/images/save.gif" AlternateText='Save' /> <asp:ImageButton ID="imgCancel" runat="server" 
              OnClick="imgCancel_Click" ToolTip='Cancel' ImageUrl="~/images/cancel.gif" AlternateText='Cancel' /> 

       </div> 
      <img src="img/prosound-subscribe.png" alt="Subscribe Today!"> 
       </a> 
       </telerik:RadScriptBlock> 
       </telerik:RadAjaxPanel> 

Может кто-нибудь сказать мне, где я иду не так с этим.

ответ

0

Проблема связана с другими блоками кода сервера на странице (например, <%=%>, в общем случае - <% ... %>), а не с этим конкретным фрагментом кода, который вы пытаетесь разрешить AJAX. Вы можете узнать больше здесь: http://docs.telerik.com/devtools/aspnet-ajax/controls/ajax/radcodeblock-and-radscriptblock

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

<telerik:RadCodeBlock runat="server" ID="RadCodeBlock1"> 
    <script> 
     function getReference() { 
      return $find("<%=someControl.ClientID%>"); 
     } 
    </script> 
</telerik:RadCodeBlock> 

С DNN, однако, я не могу сказать, где это может происходить.

Таким образом, другим вариантом является использование элемента управления <asp:UpdatePanel> для получения запросов AJAX вместо полных обратных передач. Нативный набор инструментов AJAX также предлагает элемент управления <asp:UpdateProgress>, который можно использовать вместо RadAjaxPanel.