【问题标题】:RadAjaxLoadingPanel does not works with DNNRadAjaxLoadingPanel 不适用于 DNN
【发布时间】:2015-11-14 00:57:35
【问题描述】:

我有一个 dnn 站点,它有一个标签和一个图像按钮,单击它会将标签替换为文本框,用户可以输入他们的文本,一旦提交,标签将使用此文本更新。

现在单击图像按钮会导致页面回发,我不希望为此回发,因此我放置了 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>

谁能告诉我哪里出了问题。

【问题讨论】:

    标签: c# asp.net telerik rad-controls


    【解决方案1】:

    问题在于页面上的其他服务器代码块(例如&lt;%=%&gt;,通常是&lt;% ... %&gt;),而不是您尝试启用 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,我无法说出这些可能源自何处。

    因此,您的另一个选择是使用&lt;asp:UpdatePanel&gt; 控件来获取AJAX 请求而不是完整的回发。本机 AJAX 工具集还提供了 &lt;asp:UpdateProgress&gt; 控件,您可以使用它来代替 RadAjaxPanel。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-29
      • 2018-03-04
      • 1970-01-01
      • 1970-01-01
      • 2014-12-25
      • 1970-01-01
      相关资源
      最近更新 更多