【发布时间】:2017-07-20 21:23:08
【问题描述】:
我正在尝试使用 Google 脚本创建一个显示 csv 的界面。但是,每当我加载文件时,我都会收到此错误
`1729820382-mae_html_user_bin_i18n_mae_html_user.js:39 Uncaught TypeError: Failed due to illegal value in property: 0
at Td (1729820382-mae_html_user_bin_i18n_mae_html_user.js:39)
at Pd (1729820382-mae_html_user_bin_i18n_mae_html_user.js:39)
at 1729820382-mae_html_user_bin_i18n_mae_html_user.js:6
at 1729820382-mae_html_user_bin_i18n_mae_html_user.js:21
at Object.fileToCsv (1729820382-mae_html_user_bin_i18n_mae_html_user.js:38)
at loadFile (<anonymous>:10:23)
at HTMLInputElement.onchange (VM1402 userCodeAppPanel:1)`
控制台日志正确显示了该文件,但是当它尝试将其传递给 Google 脚本时似乎出错了。我需要特殊的文件阅读器吗?
HTML 在这里
<!DOCTYPE html>
<html>
<head>
<base target="_top">
</head>
<body>
<input type="text" id="itemHolder" name="itemHolder" style="display:none"/>
<input type="file" id="myFile" name="myFile" onchange="loadFile(event)"/>
<p id="textStuff"></p>
</body>
</html>
<script type="text/javascript">
function loadFile(event) {
var input = event.target.files[0];
console.log(input)
google.script.run.fileToCsv(input);
}
function printout(array){
console.log("Try")
var spot = document.getElementById('textStuff');
spot.innerHTML = array;
}
</script>`
气体在这里
function fileToCsv(myFile){
var strData = myFile.getBlob().getDataAsString();
Logger.log(strData);
return strData;
//return CSVToArray( strData )
}
【问题讨论】:
-
这是一个非常好用的file upload solution。