我有一个表单,其唯一目的是上传文件,但出于用户体验的原因,我需要一个漂亮的按钮:
- 加载文件对话框
- 选择文件时自动提交表单
最初的解决方案类似于此 JSFiddle,其中您有一个加载文件对话框的链接,然后侦听对话框的change
事件以自动提交表单:
$("input[type=file]").on("change", function () {
// auto-submit form
$("form").submit();
});
$("#my-nice-looking-button").on("click", function (e) {
e.preventDefault();
// load file dialog
$("input[type=file]").trigger("click");
});
如果你尝试一下,它可以在 IE9、Chrome、Firefox 等中运行,但在 Internet Explorer 10 中不起作用。所有 JavaScript 功能都可以运行,包括表单的submit
事件被触发。但是,浏览器从不将表单数据 POST 到服务器;它只是坐在那里。
IE10 中是否有一些安全保护措施或文件上传限制阻止它工作?