【问题标题】:Ajax modalpopup extender not working in asp.net web pageAjax modalpopup 扩展器在 asp.net 网页中不起作用
【发布时间】:2016-08-11 21:17:09
【问题描述】:

我正在使用 Ajaxmodalpopup 扩展程序,当在服务器端代码中调用 show() 方法时,没有任何反应。下面是代码。我必须使用虚拟按钮的原因是我必须使用 TargetControlID 调用服务器端代码,如果我使用我想要的“添加测试”,则不会调用服务器端代码。所以,一旦我创建了虚拟按钮并将其分配为 TargetControlID,我就可以调用服务器端代码,然后使用 popupAddExtender.Show() 来显示弹出窗口。问题是由于某种原因未显示弹出窗口。我尝试了 Stack Overflow 提供的各种选项,但似乎都没有。感谢任何帮助。 AjaxControltoolkit 版本为 15.1.2.0,.NET Framework 为 4.0.0。

<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajax" %>

<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>

<div>
<asp:Button ID="AddTest" Text="Add Test" runat="server" OnClick="AddTest_Click"   />
</div>

<ajax:ModalPopupExtender ID="popupAddExtender" runat="server" TargetControlID="btndummypopup" PopupControlID="pnlAddTest"></ajax:ModalPopupExtender>

<asp:Panel ID="pnlAddTest" runat="server" style="display:none">
      <div>
      <asp:Label ID="lblTest" runat="server" >Test</asp:Label></div>
      <div><asp:Label ID="lblpopupTestName" runat="server"></asp:Label> 
          <asp:DropDownList ID="ddlTest" runat="server"></asp:DropDownList>
      </div>
      <div><asp:Label ID="lblMeasurement" runat="server">Measurement Date</asp:Label>
            <telerik:RadCalendar RenderMode="Lightweight" ID="radtkMeasurementDate" Width="100%" EnableMultiSelect="false" EnableKeyboardNavigation="true"
                ShowColumnHeaders="true" ShowDayCellToolTips="true" SelectedDate="08/10/2015"  ShowRowHeaders="true" runat="server"
                >

            </telerik:RadCalendar>
      </div>
      <div><asp:Label ID="lblpopupResult" runat="server"> Result</asp:Label>
          <asp:TextBox ID="lblpopupresultvalue" runat="server"></asp:TextBox>
      </div>
      <div><asp:Button ID="btnSave" runat="server" Text="Save"/>
          <asp:Button ID="btnCancel" runat="server" Text="Cancel" />
      </div>
  </asp:Panel>

<div><asp:Button ID="btndummypopup" runat="server" style="display:none" /></div>

服务器端代码:

protected void AddTest_Click(object sender, EventArgs e) {

        popupAddExtender.Show();
       ddlTest.DataSource=GetTestName();;
       ddlTest.DataValueField = "LabID";
        ddlTest.DataTextField="Name";
        ddlTest.DataBind();

    }

【问题讨论】:

    标签: c# asp.net asp.net-ajax ajaxcontroltoolkit


    【解决方案1】:

    创建了一个 asp.net 4.0 webapp,从 nuget 安装了 act 版本 15.1.2.0,复制了您的标记和代码,一切正常。这可能与您的 CSS 样式有关,或者某些 javascript 引用/调用已损坏。您可以压缩并上传您的项目吗?

    更新:使用 vs2013u up5

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多