如何解决垃圾邮件提交按钮以导入CSV文件
我有一个小问题,哈哈,让我解释一下: 我需要导入CSV文件。然后,我需要解析此文件,以将其转换为JSON对象,以调用api来更新数据库。
它可以正常工作,但问题是:我必须通过垃圾邮件上传按钮来上传此文件,但我不知道为什么。该版本每20个只能运行一次。
这是我的代码:
Test.html
<!-- Select file CSV -->
<div class="file-field input-field">
<div class="btn-large waves-effect waves-light green">
<span>File</span>
<input type="file" id="fileUpload">
</div>
<!-- Get the name of the file -->
<div class="file-path-wrapper">
<input class="file-path validate" type="text">
</div>
</div>
<!-- Import the file -->
<div class="file-field input-field">
<div class="btn-large waves-effect waves-light green">
<span>Upload</span>
<input type="button" id="upload" onclick="upload()">
</div>
</div>
Test.js
function upload(){
var fileUpload = document.getElementById("fileUpload");
var regex = /^([a-zA-Z0-9\s_\\.\-:])+(.csv)$/;
if (regex.test(fileUpload.value.toLowerCase())) {
if (typeof (FileReader) != "undefined") {
var reader = new FileReader();
reader.onload = function (e) {
//console.log("Raw File");
//console.log(e.target.result);
var lines=e.target.result.split('\r');
for(let i = 0; i<lines.length-1; i++){
lines[i] = lines[i].replace(/\s/,'')//delete all blanks
}
var result = [];
var headers=lines[0].split(",");
for(var i=1;i<lines.length-1;i++){
var obj = {};
var currentline=lines[i].split(",");
for(var j=0;j<headers.length;j++){
obj[headers[j]] = currentline[j];
}
result.push(obj);
}
//console.log("After JSON Conversion");
//console.log(JSON.stringify(result));
for(let j = 0; j<result.length; j++){
objToUpdate = {};
objToUpdate.objRotation = parseInt(result[j].OBJ_ROTATION,10);
objToUpdate.objStock = parseInt(result[j].OBJ_STOCK,10);
objToUpdate.codeEns = parseInt(result[j].CD_MAG,10);
objToUpdate.codeDep = parseInt(result[j].CD_DEP,10);
objToUpdate.codeRay = parseInt(result[j].CD_RAY,10);
console.log(objToUpdate);
$.ajax({
type : "PUT",url : "api/test?type=update",data : JSON.stringify(objToUpdate),success : function(obj){
webix.message("Ligne mise à jour");
}
});
}
}
reader.readAsText(fileUpload.files[0]);
} else {
alert("This browser does not support HTML5.");
}
} else {
console.log("Pas ok regex CSV");
}
}
我只是不知道问题出在哪里,为什么我必须向该按钮发送垃圾邮件以上传文件。 如果按钮不起作用,但他有时会起作用,我会明白的。
感谢您的咨询
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。