【发布时间】:2012-03-01 03:30:09
【问题描述】:
我有以下 ModalPopupExtender,其中包含 AJAX 组合框、RequiredFieldValidator 和 ValidatorCalloutExtender。在 ModalPopup 之外,这个 exact 代码可以工作。此外,ModalPopup 中的 ValidatorCalloutExtender 可用于其他控件,如 TextBoxes。但是以下不起作用。可以选择值“0”(默认),验证器不显示。
但是如果我取出 AJAX ComboBox 并改为放入传统的 ASP.NET DropDownList,它会按预期工作并显示 ValidatorCalloutExtender。我已经使用了开发人员工具栏,但看不到任何不寻常的东西。
我需要做什么才能使 ValidatorCalloutExtender 与 ModalPopup 内的 AJAX ComboBox 一起工作?
谢谢!
不工作:
<asp:Panel ID="pnlData" runat="server" >
<table>
<tr>
<td>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<act:ComboBox ID="cbx1" runat="server" Width="278px" DropDownStyle="DropDownList" AutoCompleteMode="SuggestAppend" CaseSensitive="false" AppendDataBoundItems="true" ToolTip="Select the Name.">
<asp:ListItem Text="(Please Select the Name)" Value="0" />
</act:ComboBox>
<asp:RequiredFieldValidator ID="cbx1Req" runat="server" ControlToValidate="cbx1"
SetFocusOnError="true" ErrorMessage="Please Select the Name."
InitialValue="0" Display="None" />
<act:ValidatorCalloutExtender ID="cbx1ReqE" runat="server"
TargetControlID="cbx1Req" PopupPosition="Right" />
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="btnAdd" EventName="Click" />
</Triggers>
</asp:UpdatePanel>
</td>
</tr>
</table>
</asp:Panel>
<act:ModalPopupExtender ID="DataMPE" runat="server"
TargetControlID="="btnHidden"
PopupControlID="pnlData" />
<asp:Button ID="btnHidden" runat="server" Text="Modal Display (Hidden)" style="display:none" />
有效(如果我将上面代码中的 AJAX ComboBox 控件替换为传统的 ASP.NET DropDownList):
<asp:DropDownList ID="cbx1" runat="server" Width="300px" AppendDataBoundItems="true">
<asp:ListItem Text="(Please Select A Name)" Value="0" />
</asp:DropDownList>
【问题讨论】:
标签: asp.net combobox ajaxcontroltoolkit modalpopupextender