如果输入空jquery,则禁用提交
Disable submit if inputs empty jquery
免责声明:我知道这个话题有很多问题,而且已经得到了高度重视,尽管我在特定情况下需要帮助。
我试着在keyup上检查输入值是否为空,然后禁用提交按钮。
我的HTML片段:
<div class='form'>
<form>
<div class='field'>
<label for="username">Username</label>
<input id="username" type="text" />
</div>
<div class='field'>
<label for="password">Password</label>
<input id="password" type="password" />
</div>
<div class='actions'>
<input type="submit" value="Login" />
</div>
</form>
</div>
我使用了这里的示例答案,并进行了一些修改:
(function() {
$('.field input').keyup(function() {
var empty = false;
$('.field input').each(function() {
if ($(this).val() == '') {
empty = true;
}
});
if (empty) {
$('.actions input').attr('disabled', true);
} else {
$('.actions input').attr('disabled', false);
}
});
})()
如有任何帮助,我们将不胜感激!
我建议在默认情况下禁用该按钮。我还会查看.val()
的长度,而不是检查空字符串。最后,我认为document.ready()
比您现有的代码可读性更强:以下是完整的代码:
HTML
<div class='form'>
<form>
<div class='field'>
<label for="username">Username</label>
<input id="username" type="text" />
</div>
<div class='field'>
<label for="password">Password</label>
<input id="password" type="password" />
</div>
<div class='actions'>
<input type="submit" value="Login" disabled="disabled" />
</div>
</form>
</div>
JS/jQuery
$(document).ready(function() {
$('.field input').on('keyup', function() {
let empty = false;
$('.field input').each(function() {
empty = $(this).val().length == 0;
});
if (empty)
$('.actions input').attr('disabled', 'disabled');
else
$('.actions input').attr('disabled', false);
});
});
这是一把正在工作的小提琴。
我在项目中使用了它,它成功了。
$(document).ready(function() {
$('.field').keyup(function() {
var empty = false;
$('.field').each(function() {
if ($(this).val().length == 0) {
empty = true;
}
});
if (empty) {
$('.actions[type="submit"]').attr('disabled', 'disabled');
} else {
$('.actions[type="submit"]').removeAttr('disabled');
}
});
});
相关文章:
- onclick在使用jquery附加时不触发提交输入
- 如何通过按Enter提交输入表格,但在按shift和Enter时不提交
- 单击按钮提交输入字段值
- 提交输入时运行函数
- 使用jquery UI next按钮提交输入字段值,php将返回结果
- 提交输入不'不要在IE和Firefox中发布
- 在使用HTML和Javascript后,我需要在表单上提交输入以显示在页面上
- 提交输入类型=“;图像“;到另一个servlet时,未能返回任何参数
- 如何停止提交输入中的空字段
- HTML5 和 Javascript 上传进度条 - 按钮与提交输入类型
- 表单未按预期提交输入类型:文件
- 如何在提交表单时单击提交输入字段开始此 JQuery 验证
- 从提交输入对函数的单击调用不起作用
- 提交输入不会触发任何内容
- 为什么在使用 JavaScript 提交表单时不提交输入和提交按钮
- 使提交输入不可点击
- 在使用javascript打开页面时自动提交输入
- jQuery-提交表单..,但也传递提交输入名称和ID
- 在表单标记外自动填充和提交输入字段
- 提交/输入后,将焦点放在相同的输入字段