<a> 点击无效,但 href 正确且有效。

3

我想用 a 标签进行一个 PDF base64 的重定向,但是当我点击它时它什么也不做,即使我使用浏览器的 devtools 检查它并点击 href 链接,它实际上也无法重定向到 PDF。

代码:

<a [href]="fileSrc">a</a>

获取文件的源代码

getImgData() {

let chooseFile = document.getElementById(this.idF) as HTMLInputElement;
let imgPreview = document.getElementById(this.fileId) as HTMLEmbedElement;
let files = chooseFile.files[0];
if (files) {
  this.globalFile = files;
  let fileReader = new FileReader();
  fileReader.readAsDataURL(files);
  fileReader.addEventListener("load", function () {
    imgPreview.src = this.result as any ;
  })
  return true
}else{
  const dataTransfer = new DataTransfer();
  if(this.globalFile != null)
  if(chooseFile.files.length == 0)
  dataTransfer.items.add(this.globalFile);
  chooseFile.files = dataTransfer.files;
  // chooseFile.files = this.globalFile;
  return false
 }
}

enter image description here


1
看起来你正在使用Angular。你应该在标签中包含它。 - LawrenceWebDev
1个回答

1

看起来你只需要一些点击事件来触发它。

<a [href]="fileSrc" (click)="openPdf(fileSrc)">a</a>

openPdf(fs) {
  window.open(fs, '_blank');
}

似乎已经有了,我收到了这个错误 嗯...无法访问此页面。看起来网页是data:application/pdf;base64,data:application/pdf;base64,JVBERi0xLjcNCiW1tbW1DQoxID - Edgar
如果你复制 href 并自行打开它,这个链接是否能够正常工作? - Anthony Tuccitto
是的,当我复制 href 或单击它时,它可以工作,但使用你的却不行。 - Edgar
错误信息“不允许导航顶部框架到数据URL”表明浏览器正在阻止window.open()方法,因为它试图将顶部框架导航到数据URL。在控制台选项卡上按F12键,您应该能够看到您所处的级别。它是否显示“top”? - Anthony Tuccitto
是的,它显示我在顶部,然后显示我的IP。 - Edgar
显示剩余5条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接