JS:For循环中的循环计数器总是未定义的

时间:2017-03-15 06:56:18

标签: jquery for-loop

我有一个JS函数来检查文件是否具有有效的扩展名并返回true或false以指示文件是否可接受。

我在标记中带有值的隐藏字段:

<input id="hidAcceptedFormat" name="acceptedFileFormat" value="xls, xlsx, xlsb" type="hidden">

这是我的JS功能:

function validateUploadedFileType(FileExtValue) {    
// Get list of accepted file format from hidden fields
var hidAcceptedFileFormat = $('#hidAcceptedFormat').val();
// Split each file format and insert into array
var acceptedFileFormatList = hidAcceptedFileFormat.split(',');    
var blnValidateResult = false;    


// Loop each file format and check if file extension is belongs to one of the acceptable format    
for (var fileTypeLoopCnt = 0; fileTypeLoopCnt < acceptedFileFormatList.length; fileTypeLoopCnt++) {
    // If file extension is indeed one of the acceptable format
    if (FileExtValue == acceptedFileFormatList[fileTypeLoopCnt]) { // Problem: fileTypeLoopCnt is always undefined
        // Verify that this file is acceptable
        blnValidateResult = true;
        // Exit current loop once verified that this file is acceptable
        break;
    }

}
return blnValidateResult;
}

我现在面临的问题是,当我在浏览器中调试时,循环内的fileTypeLoopCnt总是未定义的。

我尝试在for循环之外声明一个变量,比如让我们说var ii++并放入循环中,并在下一个循环之前增加计数器,如ii++但似乎循环中的任何内容都将是未定义的

我在这里做错了什么?

2 个答案:

答案 0 :(得分:0)

Update.where("receiving_account_id && ARRAY[?]", @remove_member.receiving_account_id).any? 是否在您的代码中实际发表了评论?因为那可能是问题所在。

答案 1 :(得分:0)

取消注释// var acceptedFileFormatList = hidAcceptedFileFormat.split(&#39;,&#39;);

另外,请确保将隐藏字段标记的文件格式ID设为id =&#39; hidAcceptedFormat&#39;