我正在使用密码重置表单。
我的jQuery正在检查两个密码是否相同而且哈希密码的jQuery是冲突的,所以我尝试将它们组合在一起,但是哈希脚本不再在表单中附加带有哈希的隐藏字段。 / p>
如何使用我要包含的formhash
方法定位表单?
这是我的剧本:
表格submit
:
$('#form').submit(function (e) {
if ($.trim($("#pwd").val()) != $.trim($("#confirmpwd").val())) {
e.preventDefault();
alert('Passwords do not match!');
return false;
} else {
formhash(this.form, this.form.pwd);
}
});
formhash
方法:
function formhash(form, password) {
var p = document.createElement("input");
// Add the new element to our form.
form.appendChild(p);
p.name = "p";
p.type = "hidden";
p.value = hex_sha512(password.value);
// Make sure the plaintext password doesn't get sent.
password.value = "";
form.submit();
}
这里有html表格供参考:
<form method="post" action="query_resetpass.php" id="form">
<h3>Password Reset Form:</h3>
<h4>Registered Email: <?php echo $email ?></h4>
<label for="pwd">Password:</label>
<input type="password" name="pwd" class="form-control" id="pwd">
<label for="confirmpwd">Confirm Password:</label>
<input type="password" name="confirmpwd" class="form-control" id="confirmpwd">
<input type="hidden" name="unique" value="<?php echo $unique ?>">
<button onclick="" type="submit" class="btn btn-default">Submit</button>
</form>
如何嵌套formhash
脚本以使两个脚本运行良好?
提前致谢。
答案 0 :(得分:0)
尝试以下代码。更改位于您传递给formhash方法的元素中。
$('#form').submit(function(e) {
if ($.trim($("#pwd").val()) != $.trim($("#confirmpwd").val())) {
e.preventDefault();
alert('Passwords do not match!');
return false;
} else {
formhash($("#form")[0], $("#pwd")[0]);
}
});