我有IE9的问题。我将file.length视为未定义。 它在IE10,firefox和chrome上工作正常。
以下是我的Javascript功能。
我有3个fileupload控件,它们具有相同的标签名为files。 当我调试下面的函数$('#' + fieldName + counter)[0]。文件在IE9中未定义。
function checkFileSize(fieldName, maxAllowedSize) {
var isValid = true;
for (var counter = 0; counter < 3; counter++) {
if ($('#' + fieldName + counter).length) {
if (typeof $('#' + fieldName + counter)[0].files != 'undefined'
&& typeof $('#' + fieldName + counter)[0].files[0] != 'undefined'
&& $('#' + fieldName + counter)[0].files.length > 0
&& typeof $('#' + fieldName + counter)[0].files[0].size != 'undefined') {
var fileSize = ($('#' + fieldName + counter)[0].files[0].size / 1024);
if (fileSize > maxAllowedSize) {
// clear value - avoid issue where unable to clear in FF
$('#' + fieldName + counter).val('');
isValid = false;
}
}
}
}
return isValid;
}
};
如果(fileSize&gt; maxAllowedSize)功能没有击中。因此,在不进行javascript验证的情况下提交页面。
非常感谢任何帮助。
如果需要更多信息,请告诉我。