0

我有一个asp 控件列表框。我必须验证这一点。这描述如下:

<div style="float:top; width:300px">
  <span>Anrede</span>
     <asp:DropDownList  id="dropdownListAnrede" runat="server" BorderStyle="Solid"
TabIndex="1"  Width="250px" BackColor="White" BorderColor="Silver" BorderWidth="1px" Height="22px">
          <asp:ListItem >Bitte auswählen</asp:ListItem>
          <asp:ListItem Value="Herr">Herr</asp:ListItem>
          <asp:ListItem Value="Frau">Frau</asp:ListItem>
          </asp:DropDownList>
          <asp:CustomValidator ID="CustomValidatorAnrede" 
               **ClientValidationFunction=""** runat="server"
               ControlToValidate="dropdownListAnrede" ValidateEmptyText="true" SetFocusOnError="true" 
        ForeColor="Red" onservervalidate="CustomValidatorName_ServerValidate"> Wählen Sie bitte eine Anrede aus!</asp:CustomValidator>
</div>

我必须验证它是否没有价值(Herr/frau),否则不会发生。并且错误消息将显示消息是写在文本中的。我必须在 javascript中编写一个ClientValidationFunction 。但我想知道怎么做?

4

1 回答 1

1

添加一个虚拟值作为基本上没有选择的第一项:

<asp:DropDownList  id="dropdownListAnrede" runat="server" ...>
    <asp:ListItem >-Select One-</asp:ListItem>

获取下拉列表,并检查它是否具有大于零的选定值(省略第一个)。这将是客户端验证功能:

function val(sender, e) {
  var ddl = document.getElementById("<%= dropdownListAnrede.ClientID %>");
  e.IsValid = ddl.selectedIndex > 0;
}
于 2013-01-17T14:10:34.863 回答