我想为我的密码创建一个验证并确认密码。我目前拥有它,因此,如果他们不匹配,它将为用户提供警报,并告诉他们他们不匹配,但是即使他们不匹配,它仍会继续并将表单数据发送到所需的位置。我如何才能验证它,如果它们不相同,它将一再询问直到满足条件?
这是我的代码。
<script>
function checkpassword()
{
var p = Register.pass.value;
var cp = Register.cpass.value;
if(p == cp)
alert("Passwords match!")
else if (p != cp)
alert("Passwords do not match!")
}
</script>
答案 0 :(得分:0)
您可以执行以下操作:
function checkpassword() {
var p = Register.pass.value;
var cp = Register.cpass.value;
if (p == cp) {
alert("Passwords match!")
return true;
}
alert("Passwords do not match!")
return false;
}
然后在发送数据的部分:
if (checkpassword()) {
// Send the data
} else {
// Do nothing
}
答案 1 :(得分:0)
<form class="pure-form">
<fieldset>
<legend>Confirm password with HTML5</legend>
<input type="password" placeholder="Password" id="password" required>
<input type="password" placeholder="Confirm Password" id="confirm_password" required>
<button type="submit" class="pure-button pure-button-primary">Confirm</button>
</fieldset>
</form>
var password = document.getElementById("password")
, confirm_password = document.getElementById("confirm_password");
function validatePassword(){
if(password.value != confirm_password.value) {
confirm_password.setCustomValidity("Passwords Don't Match");
} else {
confirm_password.setCustomValidity('');
}
}
password.onchange = validatePassword;
confirm_password.onkeyup = validatePassword;
答案 2 :(得分:0)
问题是您仅在密码匹配或不匹配时发出警报。尝试根据条件返回true或false。
示例
function validateForm(){
if(checkPassword()) form.submit();
}
function checkPassword(){
var p=Register.pass.value;
var cp=Register.cpass.value;
if(p==cp) return true;
else return false
}
提交表单时可以调用验证表单。您的代码还可以,但是错过了return语句。可以用来提交表单,也可以不提交。
答案 3 :(得分:0)
你的意思是你想要一个循环。尝试一下。
>> new_obj = Object(3)
>> new_obj.some_property
6