我有一个奇怪的问题,下面的函数是我创建的基于我在网上发现的关于在客户端动态创建一个Blob的一个二进制数据(作为数组传递)并能够下载它.这在Chrome中非常出色,但在Firefox中没有做任何事情 - 除非我调试并逐步完成代码.是的,奇怪的是,如果我在函数内创建一个断点并逐步执行它,a.click()将调出下载窗口!
function downloadFile(filename, data) {
var a = document.createElement('a');
a.style = "display: none";
var blob = new Blob(data, {type: "application/octet-stream"});
var url = window.URL.createObjectURL(blob);
a.href = url;
a.download = filename;
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
window.URL.revokeObjectURL(url);
}
Run Code Online (Sandbox Code Playgroud)
谁能帮我?这是使用Firefox 38.0.5测试的.
我有一个带有验证码图像的简单注册页面,我为用户提供了获取不同验证码图像的选项.起初我只是尝试重新加载页面,这给了我一个新的验证码图像,但不幸的是,表格被清除,这对用户来说是不可接受的和令人讨厌的.
你会如何解决这个问题?如果我从"新图像"链接提交表单,那么wicket发布过程将在它到达我的onSubmit函数之前返回各种验证错误,这也是不好的行为.
我想我也可以添加验证码图像的ajax部分重新加载,尽管这是一个更复杂的解决方案.任何指向良好和干净的解决方案的指针都会很好.