Opened 10 years ago
Closed 10 years ago
#13306 closed bug (fixed)
File input added to serialized forms caused a change in behavior and only halfway follows spec
Reported by: | Timmy Willison | Owned by: | dmethvin |
---|---|---|---|
Priority: | blocker | Milestone: | 1.9.1 |
Component: | ajax | Version: | 1.9.0 |
Keywords: | Cc: | ||
Blocked by: | Blocking: |
Description
According to the spec, file inputs with files attached should be serialized with special values. However, plugins that specialize in uploading files, such as jQuery File Upload, handle serializing file inputs for us and they do it in ways that are able to take advantage of some HTML5 features when available. In other words, I think all we need to do is what we did before 1.9, which was ignore file inputs in serialization.
This test case demonstrates the difference in serialization between 1.8 and 1.9 and shows that the value is still empty string when files are attached.
Change History (3)
comment:1 Changed 10 years ago by
Component: | unfiled → ajax |
---|---|
Milestone: | None → 1.9.1 |
Owner: | set to dmethvin |
Priority: | undecided → blocker |
Status: | new → assigned |
comment:2 Changed 10 years ago by
Correction, we don't leave the value empty, but it's still true that we don't serialize it to spec.
comment:3 Changed 10 years ago by
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Ignore file inputs when serializing forms. File input serialization is handled by plugins. Fixes #13306.
Changeset: caac041fcc31724b8b579939e8053966559483ca
Ref #12134 where the bug was introduced. Although the spec says
type="file"
should be serialized, jQuery itself doesn't serialize them so we should leave them out. It should just be a case of addingfile
to thersubmitterTypes
regex.https://github.com/jquery/jquery/commit/ae215fdcf843862dbddbdfd68117ac2926e35a42