JavaScript:脚本5:访问被拒绝ie11

JavaScript:脚本5:访问被拒绝ie11,javascript,internet-explorer-11,Javascript,Internet Explorer 11,我正在尝试从html表格下载csv文件 <!DOCTYPE html> <meta http-equiv="X-UA-Compatible" content="IE=Edge" /> <html> <body> <table> <tr> <th>Name</th> <th>Email</th> <th>Country</th>

我正在尝试从html表格下载csv文件

<!DOCTYPE html>
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
<html>
<body>

<table>
<tr>
    <th>Name</th>
    <th>Email</th>
    <th>Country</th>
</tr>
<tr>
    <td>John Doe</td>
    <td>john@gmail.com</td>
    <td>USA</td>
</tr>
<tr>
    <td>Stephen Thomas</td>
    <td>stephen@gmail.com</td>
    <td>UK</td>
</tr>
<tr>
    <td>Natly Oath</td>
    <td>natly@gmail.com</td>
    <td>France</td>
</tr>
</table>
<button onclick="exportTableToCSV('members.csv')">Export HTML Table To CSV File</button>

 <script>
function downloadCSV(csv, filename) {
var csvFile;
var downloadLink;

// CSV file
csvFile = new Blob([csv], {type: "text/csv"});

// Download link
downloadLink = document.createElement("a");

// File name
downloadLink.download = filename;

// Create a link to the file
downloadLink.href = window.URL.createObjectURL(csvFile);

// Hide download link
downloadLink.style.display = "none";

// Add the link to DOM
document.body.appendChild(downloadLink);

// Click download link
downloadLink.click();// throwing error.

}
function exportTableToCSV(filename) {
var csv = [];
var rows = document.querySelectorAll("table tr");

for (var i = 0; i < rows.length; i++) {
    var row = [], cols = rows[i].querySelectorAll("td, th");

    for (var j = 0; j < cols.length; j++) 
        row.push(cols[j].innerText);

    csv.push(row.join(","));        
}

// Download CSV file
downloadCSV(csv.join("\n"), filename);
}

</script>

</body>
</html>

名称
电子邮件
国家
无名氏
john@gmail.com
美国
史蒂芬·托马斯
stephen@gmail.com
英国
自然誓言
natly@gmail.com
法国
将HTML表格导出到CSV文件
函数下载csv(csv,文件名){
var-csvFile;
var下载链接;
//CSV文件
csvFile=newblob([csv],{type:“text/csv”});
//下载链接
downloadLink=document.createElement(“a”);
//文件名
downloadLink.download=文件名;
//创建指向该文件的链接
downloadLink.href=window.URL.createObjectURL(csvFile);
//隐藏下载链接
downloadLink.style.display=“无”;
//将链接添加到DOM
document.body.appendChild(下载链接);
//单击下载链接
downloadLink.click();//抛出错误。
}
函数exportTableToCSV(文件名){
var csv=[];
var rows=document.queryselectoral(“表tr”);
对于(变量i=0;i
但在IE11上,错误为 脚本5:访问被拒绝。在downloadLink.click()处

在其他浏览器(如chrome、mozilla firefox等)中使用的代码与预期相同。 非常感谢您的帮助

代码参考:

是否可以使用
.addEventListener()
而不是
onclick
属性?这是一个建议,不是一个确定的解决方案,但有时浏览器会阻止代码提示下载,除非它被用户事件直接调用。在这种情况下,调用
onclick
属性中的某些内容可能不被认为是由用户事件触发的,即IE11的可能重复项的可能重复项