[jQuery] Multipart forms, file uploads and the accept header

[jQuery] Multipart forms, file uploads and the accept header


Morning,
I have a simple file upload form. It works exactly as expected
without javascript. It *almost* works as expected when I convert it
to an ajax form, with something like form.ajaxSubmit(options). My
options contain a dataType definition, {'dataType' : 'json'}. I
believe that this directly relates to the HTTP Accept header and lets
my server know the type of data that I'm expecting to get back. If I
don't select a file to upload and hit submit then the Accept header is
populated correctly ("application/json, text/javascript, */*"). If I
do select a file to upload and hit submit then the Accept header
ignores my dataType and appears to default to the browser default
(something like "text/html,application/xhtml+xml,application/
xml;q=0.9,*/*;q=0.8"). In practice, this means that although the file
is uploaded correctly, I'm unable to determine the the type of
response required from the server (in Rails I can't use respond_to to
detect a request for a js response). I'm wondering whether this is by
design or whether something's wrong here.
Does anyone have any thoughts?
Cheers,
Chris