javascript - 检查是否所有输入都已填写以删除禁用属性
问题描述
我想检查所有输入是否都有一个值,如果有的话,而不是删除按钮上的 disabled 属性。
下面我插入了一个代码片段,但是当只有一个输入具有值时,这会删除该属性。
$(".follow-url-inputs").each(function(index, item) {
$(item).change(function() {
var empty = $(this).filter(function() {
return this.value === "";
});
if (empty.length) {
console.log("all fiels filled in");
} else {
$('.fs_btn-save').removeAttr('disabled')
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="follow-inputs text-center px-5">
<div class="input-group px-5">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon1">
<i class="fab fa-facebook"></i>
</span>
</div>
<input id="facebook" class="form-control follow-url-inputs" name="facebook" placeholder="https://facebook.com/followURL" data-com.agilebits.onepassword.user-edited="yes">
</div><br>
<div class="input-group px-5">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon1">
<i class="fab fa-linkedin"></i>
</span>
</div>
<input id="linkedin" class="form-control follow-url-inputs" name="linkedin" placeholder="https://linkedin.com/followURL" data-com.agilebits.onepassword.user-edited="yes">
</div><br>
<div class="input-group px-5">
<div class="input-group-prepend">
<span class="input-group-text" id="basic-addon1">
<i class="fab fa-twitter"></i>
</span>
</div>
<input id="twitter" class="form-control follow-url-inputs" name="twitter" placeholder="https://twitter.com/followURL" data-com.agilebits.onepassword.user-edited="yes">
</div><br></div>
<div class="text-center">
<button class="btn btn-primary fs_btn-primary fs_btn-save" disabled onclick="setupFollowButtons()">Save</button>
</div>
有人可以帮我检查所有输入是否都有值,然后删除 disabled 属性。
解决方案
逻辑有点倒退。您想过滤每个变化中的所有输入。您当前的代码仅过滤更改的代码
var $inputs = $(".follow-url-inputs").change(function() {
var inValid = $inputs.filter(function() {
return !this.value.trim();
}).length;
$('.fs_btn-save').prop('disabled', inValid)
if (!inValid) {
console.log("all fiels filled in");
}
});
推荐阅读
- c# - SQL Server 检索数据出来,数据得到了额外的空间
- php - 无法覆盖 Slim 框架中的 CORS 标头
- python - exe中的可变偏移量
- angular - Angular 6 供应商和主 js 花费太多时间来加载数据
- java - 如何对 YouTube 视频使用字符串插值
- python - 使用数据存储对 python 3 进行本地测试
- c# - 3-case if(小于零,大于零,零)是否有内置函数?
- infinite-loop - Cobol:在文件匹配中找不到导致无限循环错误的原因
- java - 如果结果始终相同,那么种子随机数生成器在 Java 中的实际用途是什么?
- ios - iOS Swift UIViewController 旋转