在我的ASP.Net Web窗体应用程序中,我有一个按钮,该按钮是用来启动ajaxToolKit: ModalPopupExtender
模式的。
<asp:Button ID="uxTicketHistoryButton" runat="server" Text="Show Ticket History" style="color: blue;" OnClick="uxTicketHistoryButton_Click"/>
<ajaxToolkit:ModalPopupExtender ID="uxTicketHistoryModal" runat="server" PopupControlID="Panel1" TargetControlID="uxTicketHistoryButton"CancelControlID="btnClose" BackgroundCssClass="modalBackground"></ajaxToolkit:ModalPopupExtender>
<asp:Panel ID="Panel1" runat="server" CssClass="modalPopup" align="center" style = "display:none">
....
</asp:Panel ID>
我之前曾问过question如何将C#变量值插入到模式中,但似乎我的问题是模式似乎在干扰我的按钮click event
功能;从本质上阻止它发射。该功能是假设一旦单击按钮并启动了模态后,我就需要获取插入模态中的数据。
protected void uxTicketHistoryButton_Click(object sender, EventArgs e)
{
DataTable ticketHist = _dtMgr.GetContactInfoByName(uxContactDropdownList.SelectedValue);
string rName = ticketHist.Rows[0]["RequestorName"].ToString();
string rPhone = ticketHist.Rows[0]["RequestorPhone"].ToString();
....
}
调试时我注意到了一些奇怪的事情:1)调试时,我在字符串变量上设置了断点(以查看返回的值)。单击按钮后,它会直接越过断点(我认为这意味着它不会“触发”该代码。2)我可以从_Click
函数内部删除所有代码,并且当我单击该模式时仍会启动按钮3)如果我注释掉模式代码并单击按钮,则_Click
事件代码会正常运行,并且我可以看到字符串变量的值。因此,我假设我有模态集的方式(我怀疑它与使用TargetControlID="uxTicketHistoryButton"
有关)是问题所在。如何避免模态干扰按钮单击事件?我在这里做错了什么?
答案 0 :(得分:1)
好像您找到了var obj2 = Object.assign({}, obj1)
quirks之一。试试这个:
创建一个隐藏按钮:
ajaxToolkit
将您的Extender更改为目标按钮:
<asp:button id="hiddenButton" runat="server" style="display:none;" />
然后在_Click事件中,显示模式:
TargetControlID="hiddenButton"