检查输入是否为空或是否有文本而不是数字

时间:2017-03-15 00:28:37

标签: javascript input

正如您在此处所见https://jsfiddle.net/kztnmm9o/我正在尝试检查输入是否为空。如果它们是空的,我想显示div id =" fehler",如果每个输入都有一个值(必须是一个数字,如果没有,它将显示id =" fehler"以及)我想做这个功能。我对javascript很新,可能是一个明显的错误。 谢谢你的帮助!

这是没有检查输入的原始javascript代码,有效:

var selectors = document.querySelectorAll("#eing1, #eing2, #eing3");
    for (var i = 0; i < selectors.length; i++) {
        selectors[i].addEventListener('keyup', function(event) {
        event.preventDefault();
         if (event.keyCode == 13) {
         document.getElementById("button").click();
       }
        });
    }

  function ausgeben(){


            var kostentisch = parseInt(document.getElementById("eing1").value)
            var bruttogehalt = parseInt(document.getElementById("eing2").value)
            var arbeitstage = parseInt(document.getElementById("eing3").value)

            var stundenlohn = bruttogehalt/arbeitstage/8;
            var arbeitszeit = arbeitstage*8;
            var produktivitaetssteigerung = arbeitszeit*0.12;
            var produktivitaetssteigerung2 = arbeitstage/produktivitaetssteigerung;
            var gewinnprotag = produktivitaetssteigerung2*stundenlohn;
            var amortisationszeit = Math.round(kostentisch/ gewinnprotag);

            document.getElementById("arbeitszeit").innerHTML=arbeitszeit + " Stunden";
            document.getElementById("produktivitaetssteigerung").innerHTML=produktivitaetssteigerung + " Stunden";
            document.getElementById("amortisationszeit").innerHTML=amortisationszeit + " Tage";
    }

1 个答案:

答案 0 :(得分:1)

更新小提琴:https://jsfiddle.net/kztnmm9o/3/

将测试更改为:

    var test = document.querySelectorAll('input[type="text"]');
var error = false;

    for (var i = 0; i < test.length; ++i) {
    if (test[i].value == "")
  {
    test[i].style.borderColor = "red";
    error = true;
  }
}

我也按照这个逻辑做了一些小改动,但理解起来应该很简单。

我还在this.style.borderColor = "transparent";事件中添加了keyup,但我不确定您是否喜欢。所以改变意志。