好吧,我很困难所以我打开另一个关于样式文件-fileupload表单元素的问题.
经过一些尝试,我终于(想)我让它工作,但然后像往常一样IE将再次开始抗议.问题是,我将使用以下形式,它使用css隐藏真实的文件输入,因此使用fileHiddenInput div将其替换为伪造的.
HTML:
<form enctype="multipart/form-data" method="post" name="uploadform" action = "">
<div class="input-append">
<input type="text" id = "appendedInputButtons" class="span2" name="fileuploadtext"><input type="button" id="upbutton" class="btn" value="Select"><input type="submit" name="upload" value="uploaden" class="btn">
</div>
**<div class="fileHiddenInput"><input id="upfile" type="file" name="file" value="upload" /></div>**
</form>
CSS:
/** file input **/
.fileHiddenInput {
height: 0px;
width: 0px;
overflow:hidden;
}
我将使用一些jquery发送表单,我也可以在这里放置代码.但经过多次试验和错误后,我会发现如果使用fileHiddenInput div保持使用css隐藏文件输入,IE9将不会发送文件输入.如果make我将通过删除fileHiddenInput div使文件输入可见或使用css使其可见,那么表单就像它应该做的那样得到发送.
有谁知道或有没有人找到了解决方法?
最佳答案 隐藏你的一些策略可能会尝试,一种是通过设置样式将元素放在屏幕上
position: absolute; z-index: 19999; top: -1000px; left: -1000px;
另一种方法是使用不透明控件覆盖文件输入元素.