Blazor服务器端onclick在IE11中不工作
我正试图让Blazor(服务器端)与IE11一起工作(它与Chrome一起工作)。 但IE 11似乎没有响应onclick=“@ExportExcel”。 我已经从中添加了blazor.polyfill.min.js,但没有任何帮助。 提前谢谢 前端代码如下Blazor服务器端onclick在IE11中不工作,blazor,blazor-server-side,asp.net-core-3.0,Blazor,Blazor Server Side,Asp.net Core 3.0,我正试图让Blazor(服务器端)与IE11一起工作(它与Chrome一起工作)。 但IE 11似乎没有响应onclick=“@ExportExcel”。 我已经从中添加了blazor.polyfill.min.js,但没有任何帮助。 提前谢谢 前端代码如下 @inject ExcelExportService EES <div> <button onclick="@GetTransferFile">Transfer Excel file</button&
@inject ExcelExportService EES
<div>
<button onclick="@GetTransferFile">Transfer Excel file</button>
</div>
@functions {
protected async Task GetTransferFile()
{
await EES.TransferFile();
}
}
@exportees
传输Excel文件
@功能{
受保护的异步任务GetTransferFile()
{
等待EES.TransferFile();
}
}
编辑
In_Host.cshtlm
我已经按照Issac的建议添加了polyfill.min.js
<body>
<script crossorigin="anonymous" src="https://polyfill.io/v3/polyfill.min.js"></script>
<script type="text/javascript" src="blazor.polyfill.min.js"></script>
<app>
@(await Html.RenderComponentAsync<App>())
</app>
<script src="_framework/blazor.server.js"></script>
</body>
@(等待Html.RenderComponentAsync())
现在,我在控制台日志中看到一条错误消息“CSS3111:@font-face遇到未知错误”。我注释掉bootstrap只是为了测试,但仍然得到错误。我猜是onclick中的@before GetTransferFile产生了模糊。尝试添加此多边形填充: 您应该记住,即使在服务器端执行模式下,Blazor也使用一些旧浏览器不支持的新JavaScript结构,例如promises、FetchAPI等
希望这能有所帮助……谢谢,但不幸的是,这并没有带来什么不同。我在我的帖子中添加了更多信息。你是否知道Html.RenderComponentAsync()预先呈现了你的整个Blazor应用程序(在Razor Pages或MVC中,我不知道,因为我无法访问你的整个应用程序)。这是你想要的吗?计划?在任何情况下,这都会增加应用程序的复杂性,并使查找问题变得更加困难。你明白你在做什么吗。。。无论如何,服务器端Blazor和Steve Anderson推荐的poly-fill应该可以在IE11I中使用(显然,我对这一点很陌生)。但据我所知,在应用程序呈现之后,更新将与signar一起发送,以便您只更新更改的内容。我也尝试过在创建新应用程序时使用默认模板(Blazor服务器端)。我在这里添加了多边形填充,并尝试了计数器页面,得到了相同的结果。我制作的应用程序是一样的,但是去掉了预测和计数器页面,添加了上面的代码(当然添加了代码隐藏,但我在IE中没有看到)。