Com*_*ode 3 html javascript base64
我使用以下代码在 FileReader 的 onLoad 上创建一个标签,并将 FileReader 的结果放入 href 中。这是一个 base64 字符串。
let reader = new FileReader()
reader.readAsDataURL(myInputTypeFile.files[0])
reader.onloadend = (e) => {
let file
for (let i = 0; i < attachInput.files.length; i++) {
file = attachInput.files[i]
if (file.type === 'application/pdf'){
let anchor = document.createElement('a')
anchor.setAttribute('class', 'q-attached-file')
anchor.setAttribute('title', file.name)
anchor.setAttribute('href', reader.result)
anchor.innerText = file.name
myElement.appendChild(anchor)
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是当我单击该元素时,我只看到浏览器上加载了“about:blank”。
如果您的用户使用的浏览器支持download 属性,您可以将其添加到您的锚标记中。
<a download href="...">
Run Code Online (Sandbox Code Playgroud)
然而,并非所有浏览器都支持下载属性。检查支持表。
有一个库可以做一些棘手的事情来回避浏览器之间的一些差异。如果您不介意多一些 kb,请尝试使用DownloadJS。