Note that there are some explanatory texts on larger screens.

plurals
  1. POWhy does my form not upload files in Internet Explorer 9?
    primarykey
    data
    text
    <p><strong>Welcome to episode 32,342,343 of <em>"Why does Internet Explorer Suck So Much?"</em>...</strong></p> <p>I've seen lots of reports that IE9 does a crappy job uploading files. Apparently it has lots of caveats about when it will or won't work (If someone has a definitive list I'd love to see it). However, most of the problems/solutions I see have found are related to javascript, usually the jQuery form plugin or something similar.</p> <p>My form is not submitted via AJAX and the the file input field is not hidden or obscured with css. Yet, I get several support tickets per day from users on IE9 trying to submit the form and "nothing happens" (=the form submits. No errors, but the file is not uploaded.) I haven't gotten a single complaint with a different browser, and IE8 even <em>seems</em> to work (as well as it ever does).</p> <p>Here's the top of my form. Am I missing something?</p> <pre><code>&lt;form action="http://mysite.dev/account-settings/?open=resume" method="post" class="wpjb-form" enctype="multipart/form-data"&gt; &lt;input type="hidden" name="resume_form" value="resume_form" /&gt; &lt;fieldset class="wpjb-fieldset-default"&gt; &lt;input id="firstname" name="firstname" type="hidden" class="regular-text " value="John" /&gt; &lt;input id="lastname" name="lastname" type="hidden" class="regular-text " value="Henry" /&gt; &lt;input id="email" name="email" type="hidden" class="regular-text " value="john.henry@johnhenry.com" /&gt; &lt;div class="wpjb-element-input-checkbox wpjb-element-name-is_active"&gt; &lt;label class="wpjb-label"&gt;Show resume? &lt;/label&gt; &lt;div class="wpjb-field"&gt; &lt;label for="is_active_1"&gt;&lt;input type="checkbox" class="" name="is_active" id="is_active_1" value="1" checked="checked" /&gt; Yes &lt;small style="display:inline;"&gt;(Uncheck to hide your resume)&lt;/small&gt;&lt;/label&gt; &lt;/div&gt; &lt;/div&gt; &lt;div class="wpjb-element-input-select-one wpjb-element-name-file"&gt; &lt;label class="wpjb-label"&gt;Upload a &lt;i&gt;new&lt;/i&gt; resume file&lt;/label&gt; &lt;div class="wpjb-field"&gt; &lt;input style="line-height:1em;" id="file" name="file" type="file" class="regular-text " /&gt; &lt;small class="wpjb-hint"&gt;Accepted file types: doc, docx, odf, pdf, rtf&lt;/small&gt; &lt;/div&gt; &lt;/div&gt; &lt;/fieldset&gt; ... </code></pre> <p>It goes on like this with a couple more <code>&lt;fieldset&gt;</code>s then ends like this:</p> <pre><code> .... &lt;p class="submit"&gt; &lt;input type="submit" name="Submit" id="wpjb_submit" value="Save Changes" /&gt; &lt;/p&gt; &lt;/form&gt; </code></pre> <p><strong>Update</strong> I'm happy for everyone who has never experienced this problem but it's not just me: <a href="http://answers.microsoft.com/en-us/ie/forum/ie9-windows_vista/cannot-upload-files-using-internet-explorer-9/5724d921-ae71-e011-8dfc-68b599b31bf5" rel="noreferrer">http://answers.microsoft.com/en-us/ie/forum/ie9-windows_vista/cannot-upload-files-using-internet-explorer-9/5724d921-ae71-e011-8dfc-68b599b31bf5</a></p> <p><strong>Update2</strong> I'm seeing a lot of suggestions to add a meta tag to force the user agent to IE8... <code>&lt;meta http-equiv="X-UA-Compatible" content="IE=8" /&gt;</code> I don't want to do this because although I do support IE8, many of the elements on my site render differently in IE8 vs. IE9. This would create a rather sloppy user experience as any IE users would experience I temporary "time warp" back to IE8 on that specific page.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. COI can only remedy a guess as this should work fine (curse you, IE!). Hence why it's a comment: 1) http://mysite.dev/account-settings/?open=resume Can we change this to not be a query url? I've experience issues with query in the past with IE. Legacy JScript has query as a keyword that can modify the query string of a url without your knowing. Had me baffled for weeks. 2) Perhaps we can also try verifying the file is received on the server-side? You say there are no errors, but shouldn't there be? It could redirect back to this page for resubmission (and other fields pre-populated).
      singulars
    2. COI'll test your idea bout the query url. As for verifying the file received on the server side... it definitely doesn't get saved there because the same page checks for its existence and it's definitely not getting there. Maybe you are suggesting something more complex, like whether the data actually gets sent? That's more interesting because on my form, that file upload is required. If a user on a real browser tries to skip it, the form submit will fail and the user sees a message. In IE9 literally nothing happens. The form submits "successfully" but there's no file uploaded/saved or error.
      singulars
    3. COI've seen IE utterly fail to interact with the server when the form is as simple as <form action="/upload" method="post" enctype="multipart/form-data"> <h2>upload</h2> Tag: <input type="text" name="tag"><br> local file to upload: <input type="file" name="file"> <br> <input type="submit" value="Send File"> </form>
      singulars
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload