在表单提交上,文件字段在Internet Explorer 9中清除

时间:2012-03-27 08:16:55

标签: internet-explorer file-upload internet-explorer-9

我认为这个问题与这个问题有关:

Clicking submit clears file field instead of submitting the form (IE9)

我有以下表格和1个IE9用户报告问题。他们可以从他们的计算机浏览和选择文件。但是当他们单击按钮提交表单时,图像字段被清除,因此应用程序将错误返回到“请选择图像”。

我无法复制这个问题。

上传照片(第1步,共2步)

    <div class="box-content">
    <form encType="multipart/form-data" method="post" name="galleryuploadform" action="">
    <table>
    <tbody><tr><td class="field_name" vAlign="top" width="70">Image: <span class="red_highlight">*</span></td><td><input name="photo_image" type="file"><br>
    <span class="form_hint">All images must be:</span>
        <ul><li class="form_hint"> JPEG format (.jpg at the end)</li>
             <li class="form_hint"> RGB format</li>
                <li class="form_hint">Images will be resized to 1000x1000 on the longest edge (large size) for <a href="http://www.ephotozine.com/e2signup">e2 members</a> and 600x600 (normal size) for standard members</li></ul>

    </td></tr>
    <tr><td class="field_name" vAlign="top">Adult: </td><td><input name="photo_adult" value="1" type="checkbox"><br>
    <span class="form_hint">Tick if your photo contains adult material.<br>
<strong>Important:</strong> We do not accept pornographic images and reserve the right to delete such material. </span>
    </td></tr>
    <tr><td colSpan="2" align="center">
    <input name="action" value="Upload Photo" type="hidden">
    <input onclick="submitform('galleryuploadform');display_white_box('photo_upload_lightbox');closeKeepAlive();" name="button" value="Upload Photo" type="button"></td></tr>
    </tbody></table>
    </form>


    <div class="clear"></div></div>

我们有submitform()提交表单display_white_box(),它显示带有'上传'和closeKeepAlive()的对话框消息,这是与Mac上的Safari相关的修复。我已经采用了javascript方法进行提交,因为如果我没有上传对话框中的动画gif就不会动画。

正如我所说,我不能在任何机器或任何其他浏览器上复制它。

3 个答案:

答案 0 :(得分:0)

没有解决方案。这是Internet Explorer中的一个错误。

答案 1 :(得分:0)

您的表单是否可以使用普通的提交按钮?

可能正如Joshua Gossett所说,但我找不到任何参考。所以,我更多地询问JS冲突。

我认为您不应该在onclick输入上发送submit事件。

更好的方法是在表单上放置一个onsubmit属性并在其中放入一个javascript函数,该函数指示表单在提交时的操作。

答案 2 :(得分:0)

我知道这是一个老问题,但我遇到了同样的问题,想分享对我有用的东西。

编辑 .htaccess 文件,将其放在最后:

BrowserMatch MSIE best-standards-support
Header set X-UA-Compatible IE=8 env=best-standards-support

我找到了信息here