js 上传txt格式文件
判断文件是否为.txt格式:
$(".delbao .file").on("change",function(){ var acceptType = $(this).attr('accept'); var selectedFile = $(this).val(); var fileType = selectedFile.substring(selectedFile.indexOf('.') + 1, selectedFile.length); // 截取后缀名 var location = acceptType.indexOf(fileType); if (location > -1) { return true; } else { $(this).attr('value', ''); alert('请选择'+acceptType+'格式文件'); return; } })
<input type="file" id="fileId" accept="txt" class="file" />
读取文件内容:
$(".delbao .queding").click(function(){ var file=$("#fileId")[0].files[0]; var reader=new FileReader; reader.readAsText(file,'gb2312'); //reader.readAsDataURL(file); reader.onload=function(evt){ var data=evt.target.result; if(data.indexOf('.mbtiles')<0){ alert('该文本未包含任何mbtiles格式瓦片包,请检查后重新上传'); return; } else{ // var zhi = $(".delbao .baoming").val(); const that = this; var dpara = { list: '', id: row.id } var arr = new Array() if(data.indexOf(",")>-1){ arr = data.split(",") } else{ arr = data } // arr.push(zhi) dpara.list = JSON.stringify(arr) console.log(dpara) var dptitle = data; if(data.length>20){ dptitle = data.slice(0,20)+'...'; } confirm({ title: '你确定要删除 '+dptitle+' 吗?', okText: '删除', okType: 'danger', cancelText: '取消', onOk() { delPackage(dpara).then(data => { console.log(data) // that.setState({ // reload: true, // }); $(".delbao").remove(); }); }, onCancel() {}, }); } } })