宜昌本地软件开发与弱电工程服务商
项目咨询 · 快速响应

[JS]文件后缀判断是否合法

2016-10-13 00:16:48 点击量:59 标签: 收藏本文

[JS]文件后缀判断是否合法

  1. <html>      
  2. <head>           
  3. <title> path</title>       
  4. <script language='javascript'>  
  5. //客户端获取上传文件路径 
  6. function getFullPath(obj)          
  7. {        
  8. if(obj) {                   //ie                
  9. if (window.navigator.userAgent.indexOf("MSIE")>=1) 
  10. {   
  11. obj.select();                     
  12. return document.selection.createRange().text;                
  13. }                  
  14. //firefox                 
  15. else if(window.navigator.userAgent.indexOf("Firefox")>=1)                  
  16. {                    
  17. if(obj.files)  {                          
  18. return obj.files.item(0).getAsDataURL();                     
  19. }                   
  20. return obj.value;                
  21. }               
  22. return obj.value;             
  23. }           
  24. } 
  25. function lastname(){ 
  26.  //获取欲上传的文件路径 
  27. var filepath = document.getElementById("file1").value;  
  28. //为了避免转义反斜杠出问题,这里将对其进行转换 
  29. var re = /(//+)/g;  
  30. var filename=filepath.replace(re,"#"); 
  31. //对路径字符串进行剪切截取 
  32. var one=filename.split("#"); 
  33. //获取数组中最后一个,即文件名 
  34. var two=one[one.length-1]; 
  35. //再对文件名进行截取,以取得后缀名 
  36. var three=two.split("."); 
  37.  //获取截取的最后一个字符串,即为后缀名 
  38. var last=three[three.length-1]; 
  39. //添加需要判断的后缀名类型 
  40. var tp ="jpg,gif,bmp,png"; 
  41. //返回符合条件的后缀名在字符串中的位置 
  42. var rs=tp.indexOf(last.toLowerCase()); 
  43. //如果返回的结果大于或等于0,说明包含允许上传的文件类型 
  44. if(rs>=0){ 
  45.  return true; 
  46.  }else{ 
  47.  alert("您选择的上传文件不是有效的图片文件!"); 
  48.  return false; 
  49.   } 
  50. } 
  51. </script></head>       
  52. <body>          
  53. <input type="file" id="file1" onchange="document.getElementById('img').src=getFullPath(this);" />       
  54. <img id="img" /></body></html>