我正在尝试实现代码,如果输入的任何输入值为零,则禁用按钮,否则启用。当输入的输入值为零时它工作正常,但在我输入其他值之后,它仍然禁用不启用我正在使用计数器,我总共有近40个文本字段要检查,所以我在每个语句中都使用输入类型。
以下是我实施的小提琴。
答案 0 :(得分:2)
$(document).ready(
function() {
$('input').change(function() {
// $("input").each(function() {
if($(this).val()==0)
{
$("#submitBtn").attr("disabled","disabled");
console.log("Disable");
}
else{
$("#submitBtn").removeAttr("disabled","disabled");
console.log("Enable");
}
// });
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type = 'number' class="inputBox" >
<input type = 'number' class="inputBox" >
<input type = 'number' class="inputBox" >
<input type = 'number' class="inputBox" >
<input type = 'number' class="inputBox" >
<input type = 'number' class="inputBox" >
<input type = 'number' class="inputBox" >
<input type = 'number' class="inputBox" >
<button id="submitBtn" >Submit</button>
答案 1 :(得分:1)
您需要每次都初始化count value
,因为您要检查该值是否为0值的声明。请将其设置为.change()
函数中的设置值
$(document).ready(function() {
$('input').change(function() {
var count = 0;
$("input").each(function() {
if($(this).val() == "0")
{
count = 1;
}
});
if(count == 0)
{
$("#submitBtn").removeAttr("disabled","disabled");
}
else
{
$("#submitBtn").attr("disabled","disabled");
}
});
});
答案 2 :(得分:0)
纯HTML版本。它不会在按钮上放置一个禁用的属性,但如果您尝试提交表单,如果任何输入的值小于1,则会抛出本机错误。在任何情况下都可以将该min属性放在那里。< / p>
<form>
<input type="number" min="1"/>
<input type="number" min="1"/>
<input type="number" min="1"/>
<button type="submit">submit</button>
</form>
答案 3 :(得分:0)
你走了。这适用于多个领域
root
&#13;
(function() {
$('form > input').keyup(function() {
var empty = false;
$('form > input').each(function() {
if ($(this).val() == 0) {
empty = true;
}
});
if (empty) {
$('#submit').attr('disabled', 'disabled');
} else {
$('#submit').removeAttr('disabled');
}
});
})()
/* instead of form we can use the IDs of certain fields only. In case not all fields are mandatory */
&#13;
答案 4 :(得分:0)
在你的小提琴中,你拥有number
类型的所有输入。当第一个onchange
事件发生时,它会评估所有输入。即使某些输入没有值,因为它们的类型为number
,它们的默认值为0.并且您的代码首先工作,因为在第一个onchange
事件触发之前您不检查输入。
如果您输入的所有输入字段都是非零值,则可以检查此项,然后应启用您的按钮。如果从其中一个中删除一个值,则应再次禁用它。
答案 5 :(得分:0)
它为我工作: HTML:
<input type="text" class="form-input" id="input" >
<button id="fbtn">Submit</button>
JQuery的:
<script type="text/javascript">
$('#input').on('keyup',function(){
var val = $('#input').val();
if (val == 0) {
$("#fbtn").attr("disabled","disabled");
}else{
$("#fbtn").removeAttr("disabled","disabled");
}
});
</script>
您应该为输入字段添加验证。我的意思是只接受号码等。