2012-02-27 69 views
2

我是asp.net的初学者。我现在面临一个问题。我如何强制用户从ajax控件工具包自动完成中选择选项? 这里是我的示例代码强制用户从自动完成中选择

<cus:cusTextBox ID="txtCMemberID" runat="server" Action="Edit" 
    CssClass="inputTextM" OnTextChanged="txtCMemberID_TextChanged" 
    AutoPostBack="True"></cus:cusTextBox> 
<asp:AutoCompleteExtender ID="AutoCompleteExtender2" runat="server" 
    ServicePath="~/Module/Common/autoComplete/acLewreMember.asmx" 
    MinimumPrefixLength="1" ServiceMethod="GetSuggestedStrings" 
    TargetControlID="txtCMemberID" CompletionInterval="10" 
    CompletionSetCount="3" EnableCaching="true" 
    CompletionListCssClass="completionListElement" 
    CompletionListItemCssClass="listItem" 
    CompletionListHighlightedItemCssClass="highlightedListItem" 
    FirstRowSelected="True" 
    ShowOnlyCurrentWordInCompletionListItem="True"> 
</asp:AutoCompleteExtender> 

正如你所看到的文本框是一个自定义的控制。有没有办法强制用户从自动完成中选择选项?请为我提供一个示例代码。谢谢

回答

0

ASP.NET包含一个称为验证程序的有用功能。

<asp:TextBox ID="TextBox2" ValidationGroup="Group2" runat="server" /> 
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" ErrorMessage="*Required" ValidationGroup="Group2" 
ControlToValidate="TextBox2" runat="server" /> 
<asp:Button ID="Button2" Text="Validate Group2" 
ValidationGroup="Group2" runat="server" /> 

这里是MSDN的资源链接:http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.requiredfieldvalidator.aspx

我不知道如何与定制控件这些工作,因为我是比较新的ASP。他们也有一个自定义的验证器,可能更适合你的目的,但正如我所说的。我不完全清楚。

注:如果客户使用的浏览器,这将无法工作,所以你也想通过检查该字段不为空的服务器上:

if (Page.IsValid) 
{ 
    //stuff to do in your event handler 
}