Я использую этот javascript, который я получил отсюда, и он отлично работает для того, что мне нужно.
var _validFileExtensions = [".jpg", ".jpeg"];
function File_Validator(theForm){
var arrInputs = theForm.getElementsByTagName("input");
for (var i = 0; i < arrInputs.length; i++) {
var oInput = arrInputs[i];
if (oInput.type == "file") {
var sFileName = oInput.value;
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;
break;
}
}
if (!blnValid) {
alert("Invalid image file type!");
return false;
}
}
}
return true;
}
Теперь мне было интересно, может ли, кроме того, проверить размер файла и сбой, если файл больше 500kb → все, прежде чем нажать кнопку отправки/отправки?
ИЗМЕНИТЬ
После изучения того, что предложил PHPMyCoder, я в конечном итоге решаю, используя этот код javascript:
<script language='JavaScript'>
function checkFileSize(inputFile) {
var max = 3 * 512 * 512; // 786MB
if (inputFile.files && inputFile.files[0].size > max) {
alert("File too large."); // Do your thing to handle the error.
inputFile.value = null; // Clear the field.
}
}
</script>
Это проверяет размер файла и предупреждает пользователя перед отправкой формы.