未捕获的TypeError:无法设置null的属性'href'

时间:2017-09-19 09:47:53

标签: javascript jquery html angularjs kendo-ui

  • 我正在尝试从网格下载文件。
    • 当我点击打开第一个窗口链接时,弹出窗口打开。
    • 在弹出窗口中,您将看到一个网格。
    • 但是现在您将看到网格,但在下面的行中发生错误。
    • 我正在尝试下载此功能的文件 https://jsfiddle.net/335t5aow/

未捕获的TypeError:无法设置null的属性'href'

template: "<a class=\"sportsDataPlayer\" onclick=\"window.open('#= FileName#', 'popup', 'width=800,height=600,scrollbars=yes,resizable=no')\">#= FileName.substring(FileName.lastIndexOf('/')+1) #</a>"
  • 你能告诉我如何解决它。
  • 提供以下代码

http://jsfiddle.net/savyjgg2/2/

 
template: "<a class=\"sportsDataPlayer\" onclick=\"window.open('#= FileName#', 'popup', 'width=800,height=600,scrollbars=yes,resizable=no')\">#= FileName.substring(FileName.lastIndexOf('/')+1) #</a>"    
var csv = "a,b,c\n1,2,3\n";
var data = new Blob([csv]);
var a2 = document.getElementById(".sportsDataPlayer");
alert("I am here");
a2.href = URL.createObjectURL(data);

2 个答案:

答案 0 :(得分:1)

<强>更新

Ja Ja我更新了小提琴,但这只是部分训练(只会下载第一个文件)。要将文件呈现为可下载,您必须在<a>标记中使用download属性。

在您的JS代码中,您必须相应地对逻辑进行更改,以便download属性将分别应用于每个文件名。

试试这个 FIDDLE ,只有一个小小的修正

改变是,

  1. var a2 = document.getElementById("sportsDataPlayer");
  2. class=\"sportsDataPlayer\"更改为id=\"sportsDataPlayer\"

答案 1 :(得分:-1)

错误: ComboBoxItem

修复: var a2 = document.getElementById(".sportsDataPlayer");