我想用jQuery验证dropdownlist
。我的代码是:
<asp:DropDownList ID="ddlstate" runat="server" CssClass="dropdown">
<asp:ListItem Value="0" Selected="True"> - Select State - </asp:ListItem>
<asp:ListItem Value="AL">AL</asp:ListItem>
<asp:ListItem Value="AK">AK</asp:ListItem>
<asp:ListItem Value="AZ">AZ</asp:ListItem>
<asp:ListItem Value="AR">AR</asp:ListItem>
<asp:ListItem Value="CA">CA</asp:ListItem>
<asp:ListItem Value="CO">CO</asp:ListItem>
<asp:ListItem Value="CT">CT</asp:ListItem>
</asp:DropDownList>
我的jQuery验证是:
$(document).ready(function() {
$("#aspnetForm").validate({
rules: <%=ddlstate.UniqueID %>: {
required: "*"
}
},
messages: <%=ddlstate.UniqueID %>: {
required: "*"
},
});
答案 0 :(得分:0)
试试这个。添加一个名为dropdownvalidator的方法,该方法将验证下拉列表
$.validator.addMethod("dropDownValidator", function (value, element, parameters) {
return (value != '0');
});
并在规则中指定dropdownvalidator方法,如下所示
rules: {
myDropdown: {
dropDownValidator: true
}
答案 1 :(得分:0)
If($("#ddlstate").Val() =="0")
{
alert("Please select state");
}
答案 2 :(得分:0)
您必须将默认值保留为“”才能生效。
<asp:DropDownList ID="ddlstate" runat="server" CssClass="dropdown">
<asp:ListItem Value="" Selected="True"> - Select State - </asp:ListItem>
<asp:ListItem Value="AL">AL</asp:ListItem>
...
答案 3 :(得分:0)
这应该有效:
jQuery.validator.addMethod("state", function(value, element) {
return /A-ZA-Z/.test(value);
}, "Please select a state");
$("#aspnetForm").validate();
<asp:DropDownList ID="ddlstate" runat="server" CssClass="dropdown state">
答案 4 :(得分:0)
如果您正在使用数据绑定来填充表单,则可以手动添加以空字符串作为值的ListItem,并将 required 属性添加到下拉列表中。然后,如果jquery验证程序未从列表中选择其他项,则验证将失败。
//aspx.cs code if using databinding
myList.Items.Insert(0, new ListItem("", ""));
// aspx code
<asp:DropDownList ID="myList" runat="server" required="true">/asp:DropDownList>
// js code
var validator = $("#Form1").validate();