使用密码字段验证多个表单
Posted
技术标签:
【中文标题】使用密码字段验证多个表单【英文标题】:Validate multiple forms with password fields 【发布时间】:2016-01-05 12:42:42 【问题描述】:我遇到了一些验证问题。在我的页面上,我有多个表单,每个表单都可以更新特定用户的密码。如果用户在密码字段中输入任何内容,他们还必须在密码确认字段中输入。密码字段仅在用户输入内容时进行验证。以下是我下面的内容: html(为了您的乐趣而精简)
<form action="#" method="post" class="validateUser">
<input type="password" class="form-control" name="password">
<input type="password" class="form-control" name="password_again">
</form>
jQuery:
var entry;
j$('.validateUser').each(function(index, element)
entry = j$(this);
j$(this).validate(
rules:
password:
minlength:
depends: entry.find("input[name='password']").val().length > 0,
param: 6
,
password_again:
minlength:
depends: entry.find("input[name='password']").val().length > 0,
param: 6
,
equalTo:
depends: entry.find("input[name='password']").val().length > 0,
param: entry.find("input[name='password_again']").val()
);
);
jQuery 目前不工作,任何正确方向的帮助将不胜感激
【问题讨论】:
您的所有表单是否都带有与name="password"
和name="password_again"
相同的字段名称?
@Sina 是的,我是。所有表单都具有相同的名称属性
那你能不能试着给他们分配id
s,然后用input[id='uniqueid']
测试,让我们知道结果(如果有的话)?
我试图避免使用唯一 ID。不过我会试一试
或者你甚至可以拥有find("#uniqueid")
?好的。试试这个,检查问题是否仅仅是没有唯一的id
s 或特定类的事实
【参考方案1】:
试试这个
// Html Code
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
</head>
<form action="#" method="post" class="validateUser">
passwrod:<input type="password" class="form-control" name="password" id="PasswordFild1">
Conform Password: <input type="password" class="form-control" name="password_again" id="PasswordFild2">
</form>
// Jquery Validation
$(document).ready(function()
$("#PasswordFild2").change(function()
var PasswordFild1= $("#PasswordFild1").val();
var PasswordFild2= $("#PasswordFild2").val();
if(PasswordFild1 == PasswordFild2 )
// Then Validate Both Password Match
else
alert('Enter Same password');
// alert or error mess Print : password not match
// Check input( $( this ).val() ) for validity here
);
);
【讨论】:
虽然这确实有效,但这不是我想要的对不起。它不可扩展,不使用 jQuery Validate(因为我有其他需要验证的字段,所以需要)以上是关于使用密码字段验证多个表单的主要内容,如果未能解决你的问题,请参考以下文章