【发布时间】:2014-01-28 03:28:27
【问题描述】:
我的目标是首先验证上传文件是图像,如果是图像,我将显示它。我从Validation Code 和Image Code 获得代码。
起初我能够显示图像。但是,当我将显示图像代码与验证代码结合使用时,我无法同时进行验证和显示。
谁能帮帮我?以下是我的代码。提前致谢! :)
<input type="file" name="dataFile" id="fileChooser" onchange="readURL(this);" />
<SCRIPT type="text/javascript">
var _validFileExtensions = [".jpg", ".jpeg", ".bmp", ".gif", ".png"];
function readURL(input) {
var arrInputs = document.getElementById("fileChooser").value;
for (var i = 0; i < arrInputs.length; i++) {
var oInput = arrInputs[i];
if (oInput.type == "file") {
var sFileName = oInput.value;
if (sFileName.length > 0) {
var blnValid = false;
for (var j = 0; j < _validFileExtensions.length; j++) {
var sCurExtension = _validFileExtensions[j];
if (sFileName.substr(sFileName.length - sCurExtension.length, sCurExtension.length).toLowerCase() == sCurExtension.toLowerCase()) {
blnValid = true;
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$('#blah').attr('src', e.target.result)
};
reader.readAsDataURL(input.files[0]);
}
break;
}
}
if (!blnValid) {
alert("Sorry, " + sFileName + " is invalid, allowed extensions are: " + _validFileExtensions.join(", "));
return false;
}
}
}
}
return true;
}
【问题讨论】:
标签: javascript image validation file-upload