【发布时间】:2013-08-08 14:37:49
【问题描述】:
我有两个输入,例如
pass: <input type="password" name="pass" required/>
pass again: <input type="password" name="pass2" required/>
我想比较这些输入,如果它们匹配,则将输入设置为有效。我试过这个,但我认为prop('valid', true); 不起作用:
$(document).ready(function() {
$('input[name=pass2]').keyup(function() {
if($('input[name=pass]').val() == $('input[name=pass2]').val()) {
$('#pass_hint').empty();
$('#pass_hint').html('match');
$(this).prop('valid', true);
} else {
$('#pass_hint').empty();
$('#pass_hint').html('mismatch');
$(this).prop('invalid', true);
}
});
});
我创建了一个注册表单,如果密码不同,则输入字段无效,我无法提交并显示一些提示。 ...而且我不知道如何将此输入设置为无效
【问题讨论】:
-
当您将其标记为无效时,您是否期望某种不同的行为,或者您只是希望样式向用户表明它是无效的?
-
您的登录框是否实际上包含一个名为
#pass_hint的显示元素? PS。您不必清空它,.html()会为您完成。 -
实际上,您为什么要在 JQuery 中验证用户输入?它是可操作的,用户可以轻松绕过这些规则。我建议在服务器端进行。
-
@SasankaPanguluri:是的,服务器端验证是绝对必要的。但是客户端验证也很不错,因此用户不必等待对服务器的请求就可以发现他们搞砸了。
-
我创建了一个注册表单,如果密码不一样,输入字段无效,我不提交这个并给我一些提示。 ...而且我不知道如何将此输入设置为无效
标签: jquery validation