作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
欢迎收看“为什么 Internet Explorer 如此糟糕?”的第 32,342,343 集...
我看到很多报告说 IE9 在上传文件方面做得很糟糕。显然,它有很多关于何时会或不会起作用的警告(如果有人有明确的 list ,我很乐意看到它)。但是,我发现的大多数问题/解决方案都与 javascript 有关,通常是 jQuery 表单插件或类似的东西。
我的表单不是通过 AJAX 提交的,并且文件输入字段没有被 css 隐藏或遮挡。然而,我每天从 IE9 上尝试提交表单的用户那里收到几张支持票,但“什么也没发生”(=表单提交。没有错误,但文件没有上传。)我没有收到任何投诉不同的浏览器,甚至 IE8 似乎也可以工作(和以往一样)。
这是我的表格的顶部。我错过了什么吗?
<form action="http://mysite.dev/account-settings/?open=resume" method="post" class="wpjb-form" enctype="multipart/form-data">
<input type="hidden" name="resume_form" value="resume_form" />
<fieldset class="wpjb-fieldset-default">
<input id="firstname" name="firstname" type="hidden" class="regular-text " value="John" />
<input id="lastname" name="lastname" type="hidden" class="regular-text " value="Henry" />
<input id="email" name="email" type="hidden" class="regular-text " value="john.henry@johnhenry.com" />
<div class="wpjb-element-input-checkbox wpjb-element-name-is_active">
<label class="wpjb-label">Show resume? </label>
<div class="wpjb-field">
<label for="is_active_1"><input type="checkbox" class="" name="is_active" id="is_active_1" value="1" checked="checked" /> Yes <small style="display:inline;">(Uncheck to hide your resume)</small></label>
</div>
</div>
<div class="wpjb-element-input-select-one wpjb-element-name-file">
<label class="wpjb-label">Upload a <i>new</i> resume file</label>
<div class="wpjb-field">
<input style="line-height:1em;" id="file" name="file" type="file" class="regular-text " />
<small class="wpjb-hint">Accepted file types: doc, docx, odf, pdf, rtf</small>
</div>
</div>
</fieldset>
...
<fieldset>
s 然后像这样结束:
....
<p class="submit">
<input type="submit" name="Submit" id="wpjb_submit" value="Save Changes" />
</p>
</form>
<meta http-equiv="X-UA-Compatible" content="IE=8" />
我不想这样做,因为虽然我确实支持 IE8,但我网站上的许多元素在 IE8 和 IE9 中呈现不同。这将创建一个相当草率的用户体验,因为任何 IE 用户都会在该特定页面上临时“时间扭曲”回到 IE8。
最佳答案
我能够通过在 setTimeout 中包装 jQuery 表单提交来解决这个问题的噩梦:
$('#complete_profile input[type="submit"]').click(function(){
setTimeout(function() {
$('#complete_profile form').submit();
}, 0);
});
关于forms - 为什么我的表单不能在 Internet Explorer 9 中上传文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15598963/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!