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

I have a dnn site, which has a label and an imagebutton, clicking on which replaces the label with textbox and user can enter their text, once submitted the label will be updated with this text.

Теперь нажатие на кнопку изображения вызывает обратную передачу страницы, мне не нужна обратная передача для этого, поэтому я поместил элемент управления Telerik RadAjaxLoadingPanel, поэтому классный загрузочный 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>

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


person Abbas    schedule 14.11.2015    source источник


Ответы (1)


Проблема заключается в других блоках кода сервера на странице (например, <%=%>, обычно - <% ... %>), а не в этом конкретном фрагменте кода, который вы пытаетесь включить с помощью 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.

person rdmptn    schedule 17.11.2015