Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 循环检查所有输入,但它';这只是第一个_Javascript_Loops_Foreach - Fatal编程技术网

Javascript 循环检查所有输入,但它';这只是第一个

Javascript 循环检查所有输入,但它';这只是第一个,javascript,loops,foreach,Javascript,Loops,Foreach,我做了一个循环来检查所有inputArr元素,但是它只检查第一个元素,如果它为真,则不检查其他元素并返回真。我需要检查所有这些,如果其中任何一个是假的,我想得到一个错误消息。我也尝试过forEach,但仍然不起作用 这是我的密码 btn.addEventListener('click', function () { let isValid = checkIfValid([firstName, surname, email, mobileNumber]) let userInfo

我做了一个循环来检查所有
inputArr
元素,但是它只检查第一个元素,如果它为真,则不检查其他元素并返回真。我需要检查所有这些,如果其中任何一个是假的,我想得到一个错误消息。我也尝试过forEach,但仍然不起作用

这是我的密码


btn.addEventListener('click', function () {
    let isValid = checkIfValid([firstName, surname, email, mobileNumber])
    let userInfo = generateInputs(firstName.value, surname.value, email.value, mobileNumber.value);
    if (isValid) {
     console.log('all checked')
    } else {
     console.log('you need to fill all fields')
    }
})


function checkIfValid(inputArr) {
    for (let i = 0; i < inputArr.length; i++) {
        if (inputArr[i].value === '') {
            return false
        } else {
            console.log(inputArr[i].value)
            return true
        }
    }
}

btn.addEventListener('click',函数(){
让isValid=checkIfValid([名字、姓氏、电子邮件、手机号码])
让userInfo=generateInputs(firstName.value、姓氏.value、email.value、mobileNumber.value);
如果(有效){
console.log('全部选中')
}否则{
console.log('您需要填写所有字段')
}
})
函数checkIfValid(inputArr){
for(设i=0;i
您的
return true
语句停止for循环

这将起作用,在第一个无效项上返回false,否则返回true:

函数checkIfValid(inputArr){
for(设i=0;i
现代替代方案

您可以使用
Array.prototype.every()
简化代码:

函数checkIfValid(inputArr){
返回inputArr.every(el=>el.value!='');
}

返回
将退出循环,与
中断