JS事件未更改输入禁用属性
JS event not changing input disabled attr
我目前正试图在我的网站上设置一个注册页面,但遇到了一个问题:我的JS脚本的行为不像我希望它做
这是我的剧本:
function checkPasswordMatch() {
var password = $("#password").val();
var confirmPassword = $("#retypepassword").val();
if (password != confirmPassword) {
$("#pass").html("Passwords do not match!");
$("#submit").attr("disabled");
}
else {
$("#pass").html("Password match.");
$("#submit").removeAttr("disabled");
}
}
$(document).ready(function () {
$("#retypepassword").keyup(checkPasswordMatch);
});
我的html代码:
<INPUT class="btn btn-primary" type="submit" id="submit" name="" value="Register" disabled />
因此,在我看来,应该在密码不匹配时添加"禁用"属性,并在匹配时删除它,但实际情况是:
当密码匹配时,禁用状态将被删除,但如果它们不匹配(例如,如果出于任何原因修改了它们),则它们的状态不会再次返回
就像AlexGm一样,我建议你试试这个。
function checkPasswordMatch() {
var password = $("#password").val();
var confirmPassword = $("#retypepassword").val();
// Note: !==
var noMatch = password !== confirmPassword;
if (noMatch) {
$("#pass").html("Passwords do not match!");
} else {
$("#pass").html("Password match.");
}
$("#submit").attr("disabled", noMatch);
}
要实现您所描述的,请尝试将其稍微更改为:
$("#submit").attr("disabled", true);
和
$("#submit").attr("disabled", false);
相关文章:
- 选中单选框时将属性添加到输入字段
- 如何选择多个输入字段并删除所需的属性
- Html5输入属性的默认值,如最小值、最大值、大小等
- 将输入值设置为ng模型属性[Angular]时出现问题
- Javascript获取具有不同id的文件数's来自没有多个属性的文件输入元素
- <输入id=“;“到期”;type=“;月份;min=“;2016-05”>如何填写“;min”;属性与当前
- JS事件未更改输入禁用属性
- 如何动态更新输入值属性
- 如何将按钮的数据属性设置为输入[type=text]中设置的任何值
- 使用jQuery更改输入字段的自定义属性
- 在jquery中,从同一对象的属性设置输入字段和标签的正确方法是什么
- 更改类所选空输入的CSS属性
- 更改 html 输入字段中的占位符属性
- 至于所有输入的标签都用指定的属性来设置,例如属性检查=false
- 为什么除了html5输入模式属性之外,这个简单的regex在任何地方都能工作
- 显示范围输入的值"无法读取属性'值'“为空”;
- jQuery:检查hasClass的name属性输入
- 文本属性输入框,用于选择字体
- RegExp构造函数属性输入
- 属性输入值为另一个输入值