使用JavaScript函数进行验证

使用JavaScript函数进行验证,javascript,asp.net,validation,custom-validators,Javascript,Asp.net,Validation,Custom Validators,我有以下JavaScript函数: 函数验证性(对象、参数){ if(document.getElementById(“”).value==“0”){ args.IsValid=false; } 否则{ args.IsValid=true; } } 以及以下带有验证程序的下拉列表: <asp:DropDownList ID="ddlLocality" runat="server" DataSourceID="DataSourceListTowns" DataTextFie

我有以下JavaScript函数:

函数验证性(对象、参数){
if(document.getElementById(“”).value==“0”){
args.IsValid=false;
}
否则{
args.IsValid=true;
}
}
以及以下带有验证程序的下拉列表:

<asp:DropDownList
  ID="ddlLocality"
  runat="server"
  DataSourceID="DataSourceListTowns"
  DataTextField="town_name"
  DataValueField="town_id"
  ToolTip="The Locality Where the User Lives"
  AppendDataBoundItems="True"
  ViewStateMode="Disabled">
<asp:ListItem Value="0">Select Locality</asp:ListItem></asp:DropDownList>
<asp:CustomValidator
  runat="server"
  ControlToValidate="ddlLocality" 
  ErrorMessage="Select Locality"
  ToolTip="Select Locality"
  ID="validateLocality" 
  ClientValidationFunction="validateLocality()">*</asp:CustomValidator>

选择地点
*
问题是它根本没有验证下拉列表


谢谢你的帮助,因为我为此伤了脑筋

你的函数有两个参数:

function validateLocality(object, args)
但是当你打电话的时候,你没有传递任何信息

ClientValidationFunction="validateLocality()"
向函数添加警报,以确保在提交时调用该函数

function validateLocality(object, args)
{
     alert("working");

     if (document.getElementById("<%=ddlLocality.ClientID %>").value == "0")
     {
          args.IsValid = false;
     }
     else
     {
          args.IsValid = true;
     }
}
函数验证性(对象、参数)
{
警惕(“工作”);
if(document.getElementById(“”).value==“0”)
{
args.IsValid=false;
}
其他的
{
args.IsValid=true;
}
}

客户端验证函数应仅包含函数的名称。它不希望携带Javascript表达式。因此,您的属性应该如下所示:
ClientValidationFunction=“validateLocality”
注意:警报正在显示,但自定义提供程序没有显示asterix,我确信值为0。问题是我在if语句中发出了警报,它没有输入if或else,这有点奇怪