好的,这让我发疯了。我有一个用户帐户页面。您可以选择更改密码。我想要一个条件jquery验证,如果用户在新密码框中键入新密码,则确认密码的框以及要求输入旧密码的框将变为必需元素。到目前为止,这是我的ragtag代码:
$("#aspnetForm").validate({
rules: {
<%=CurrentPass.UniqueID %>: {
required: <%=NewPass1.UniqueID %>:specified}
<%=NewPass2.UniqueID %>: {
required: <%=NewPass1.UniqueID %>:specified}
}, messages:{}
});
只是为了澄清一些事情。我正在使用:指定,因为如果填写了该字段。也许还有一些其他条件?
答案 0 :(得分:0)
这些选择器需要使用:filled
作为字符串(除非:specified
是您自己制作的自定义选择器)并且通过ID而不是名称找到,如下所示:
$("#aspnetForm").validate({
rules: {
<%=CurrentPass.UniqueID %>:{
required: "#<%=NewPass1.ClientID %>:filled"}
<%=NewPass2.UniqueID %>:{
required: "#<%=NewPass1.ClientID %>:filled"}
}, messages:{}
});
});
答案 1 :(得分:0)
我认为您希望使用equalTo
作为确认密码,如果新密码中包含数据,则需要当前密码。
$('form').validate({
rules: {
<%= CurrentPass.UniqueID %>: {
required: '#<%= NewPass1.ClientID %>:filled'
},
<%= NewPass2.UniqueID %>: {
equalTo: '#<%= NewPass1.ClientID %>'
}
}
});