Side navigation
#11594 closed bug (wontfix)
Opened April 16, 2012 02:25PM UTC
Closed April 23, 2012 04:13PM UTC
Last modified October 15, 2012 08:36PM UTC
Serialize fieldset in Chrome and IE9
Reported by: | jragsdale@phoenixwebgroup.com | Owned by: | jragsdale@phoenixwebgroup.com |
---|---|---|---|
Priority: | low | Milestone: | None |
Component: | ajax | Version: | 1.7.2 |
Keywords: | Cc: | ||
Blocked by: | Blocking: |
Description
.serialize() does not serialize form elements inside a fieldset in Chrome or IE9.
A test case is provided at http://jsfiddle.net/HQZts/
To reproduce the issue, open the above test case in the following browsers:
Firefox, Chrome, and IE 9.
fails:
Chrome and IE 9 on Windows 7 64-bit
works:
Firefox on Windows 7 64-bit
Attachments (0)
Change History (5)
Changed April 16, 2012 02:38PM UTC by comment:1
owner: | → jragsdale@phoenixwebgroup.com |
---|---|
status: | new → pending |
Changed April 16, 2012 03:08PM UTC by comment:2
status: | pending → new |
---|
I want to save bandwidth by sending only a subset of a form in certain cases. Likely, there are workarounds where I can use nested forms to get my desired results.
In the first paragraph of the documentation, there is a sentence that reads, "It operates on a jQuery object representing a set of form elements." A fieldset can contain form elements, thus the confusion.
I am not the first to encounter similar confusion:
http://bugs.jquery.com/ticket/9863
Simplest solution is to make the documentation more clearly express the limitations of .serialize() on elements other than the root form.
Changed April 16, 2012 03:51PM UTC by comment:3
keywords: | → needsdocs |
---|
I don't think adding a note about using it on fieldsets is a terrible idea, so +1 for that. This could perhaps be phased in terms of explaining that "a collection that contains an element that contains form elements is not the same as a collection that contains form elements." Using the word "represent" is probably misleading here.
But in terms of workarounds, I just thought it's worth noting that $("#someFieldset :input").serialize() is probably a wiser move than nested forms, etc, so I wanted to chime in with that.
Changed April 23, 2012 04:13PM UTC by comment:4
component: | unfiled → ajax |
---|---|
priority: | undecided → low |
resolution: | → wontfix |
status: | new → closed |
Closing this as wontfix, docs pending.
Changed October 15, 2012 08:36PM UTC by comment:5
keywords: | needsdocs |
---|
It doesn't seem like this is a documented use of the method.
So other than a form, there is no current use of
.serialize()
that requires the code to search inside an element for more elements to process.Is there some documentation that implied it was correct to use a fieldset like this? At best I'd consider it an enhancement request and not a bug, but I'd prefer to just clarify the docs. It's easy to change the selector to get your desired effect.