Javascript禁用按钮,直到所有字段都已填充

Javascript禁用按钮,直到所有字段都已填充,javascript,button,Javascript,Button,如果你能帮我解决这个问题,我将不胜感激。 需要使事件侦听器为所有元素工作。因此,基本上,当您填写姓名,姓氏,即所有字段时,只有按钮应被启用,即使其中一个字段为空,按钮也应被禁用 (function () { "use strict"; var knapp = document.getElementById('skicka'); knapp.disabled = true; var f=document.getElementById('fornamn'); var e=docum

如果你能帮我解决这个问题,我将不胜感激。 需要使事件侦听器为所有元素工作。因此,基本上,当您填写姓名,姓氏,即所有字段时,只有按钮应被启用,即使其中一个字段为空,按钮也应被禁用

 (function () {
 "use strict";

 var knapp = document.getElementById('skicka');

 knapp.disabled = true;

 var f=document.getElementById('fornamn');
 var e=document.getElementById('efternamn');
 var p=document.getElementById('passnr');
 var n=document.getElementById('nat');

 e.addEventListener('change',function(){

  if(e.value==='' ){

 knapp.disabled=true;
   }

 else{
  knapp.disabled=false;
 }
  });

  })();
var elements=document.queryselectoral(“#fornamn,#efternamn,#passnr,#nat”);
对于(var i=0;i
let d=document,[inputs,knapp]=[
d、 querySelectorAll('[type=“text”]'),
d、 查询选择器(“#skicka”)]
knapp.disabled=true
对于(i=0;i{
让值=[]
inputs.forEach(v=>values.push(v.value))
knapp.disabled=值。包括(“”)
})
}






它可以工作,但不符合规定。我的意思是,如果所有字段都是字段而不是其中一个字段,那么任务就是启用按钮。使用此代码,只要我在其中一个字段中写入内容,按钮就会被启用。答案已更新。并且还可以使用类选择器来选择onChange事件的元素,这样就不需要通过元素循环来添加事件列表。如果缺少
=
,应该是
…ntById(“nat”)。value==“”…
,是的,对我来说也不起作用。
var elements = document.querySelectorAll("#fornamn, #efternamn, #passnr, #nat");
for (var i = 0; i < elements.length; i++) {
  elements[i].addEventListener("change", function() {
    if(document.getElementById("fornamn").value == "" && document.getElementById("passnr").value == "" && document.getElementById("nat").value = "" && document.getElementById("efternamn").value == "") {
        knapp.disabled=true;
    } else {
        knapp.disabled=false;
    }
  });
}