2013-04-06 33 views
0

我尝试验证CSV文件时使用扩展/格式CSV用户上传文件jQuery验证CSV文件

<script type="text/javascript"> 
$(document).ready(function() { 
    $('#form1').validate({ 
     rules: { csv: { required: true, accept: "csv" }}, 
     messages: { csv: "File must be CSV" } 
    }); 
}); 
</script> 

<form action="product_import.php?action=import" method="POST" name="form1" id="form1" enctype="multipart/form-data"> 
<input name="csv" type="file" id="csv" /> 
</form> 

但问题是,当我上载与扩展csv文件此错误消息将显示File must be CSV,我不知道为什么这个脚本不能接受,即使我设置为accept: "csv"

我的CSV文件名是product.csv

回答

6

The accept rule不是文件扩展名,它是MIME类型。

您可能需要使用the extension rule instead

DEMO:http://jsfiddle.net/c5R3b/

$(document).ready(function() { 

    $('#form1').validate({ 
     rules: { 
      myfield: { 
       required: true, 
       extension: "csv" 
      } 
     } 
    }); 

}); 

然而,这两种规则要求additional-methods.js file列入。

+0

感谢@Sparky ..我已经包括额外-methods.js文件只需要更改扩展名:“CSV” ..再次感谢:) – rusly 2013-04-06 04:49:09

2

下面是用普通的JS方法为我工作的东西。 可能是别人的帮助,

if(document.getElementById("csv").value.toLowerCase().lastIndexOf(".csv")==-1) 
{ 
     alert("Please upload a file with .csv extension."); 
     return false; 
} 
+0

正是我一直在寻找。这很棒! – Morfinismo 2016-11-26 16:05:16