Javascript 如何使用Angularjs在Safari上多次上传csv文件?
我已经编写了一个web应用程序,我想上传一个Javascript 如何使用Angularjs在Safari上多次上传csv文件?,javascript,angularjs,csv,safari,Javascript,Angularjs,Csv,Safari,我已经编写了一个web应用程序,我想上传一个CSV文件。它在Chrome上按预期工作,但在Safari上不起作用 下面是上传文件的Angularjs代码 $scope.uploadFile = function (file) { var name, extension, browser; var isSafari = /Safari/.test(navigator.userAgent) && /Apple Computer/.test(navigator.vend
CSV
文件。它在Chrome上按预期工作,但在Safari上不起作用
下面是上传文件的Angularjs代码
$scope.uploadFile = function (file) {
var name, extension, browser;
var isSafari = /Safari/.test(navigator.userAgent) && /Apple Computer/.test(navigator.vendor);
if (isSafari) {
name = file.fileName;
extension = name.split('.')[name.split('.').length - 1].toLowerCase();
if (extension != "csv") {
alert("Selected File is not a valid .CSV file. Please select a .CSV file.");
return false;
}
}
//Code to save file to server
}
下面是调用上述函数的HTML代码
<input id="uploader" type="file" ngf-select="uploadFile(uploadedFile)"
ng-model="uploadedFile" ngf-max-size="100MB" name="file"
ngf-accept="'application/csv, text/csv, text/comma-separated-values, *.csv, .csv, application/vnd.openxmlformats-officedocument.wordprocessingml.document, application/vnd.ms-excel'">
当我第一次单击input
按钮时,函数被正确调用。所选文件按预期上载。当我第二次尝试上载同一个文件时,问题就开始了。只要我单击
文件选择器,就会调用上传文件
函数
上述问题仅在Safari中出现,而在Chrome中不会出现
如何修改代码,使每次单击上载文件时,只有在选择文件后才能调用该函数
感谢您阅读我的问题。您是否找到了此问题的解决方案?没有。仍在搜索答案。我通过放置accept=“.csv,text/csv”来解决此问题。很酷。谢谢你让我知道!你找到这个问题的解决方案了吗?没有。仍在搜索答案。我通过放置accept=“.csv,text/csv”来解决这个问题。很酷。谢谢你让我知道!