2015-07-11 68 views

回答

0

我看到这个问题已经存在并且有很好的答案。请检查波纹管连接Validation of file extension before uploading file

var _validFileExtensions = [".jpg", ".jpeg", ".bmp", ".gif", ".png"];  
 
function Validate(oForm) { 
 
    var arrInputs = oForm.getElementsByTagName("input"); 
 
    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; 
 
         break; 
 
        } 
 
       } 
 
       
 
       if (!blnValid) { 
 
        alert("Sorry, " + sFileName + " is invalid, allowed extensions are: " + _validFileExtensions.join(", ")); 
 
        return false; 
 
       } 
 
      } 
 
     } 
 
    } 
 
    
 
    return true; 
 
}
<form onsubmit="return Validate(this);"> 
 
    File: <input type="file" name="my file" /><br /> 
 
    <input type="submit" value="Submit" /> 
 
</form>

+0

谢谢,这将完成这项工作,但我需要的不是在对话框中显示不支持的文件。 –