Opened 12 years ago
Closed 8 years ago
#8295 closed defect (wontfix)
dijit.Editor breaks forms under IE7
Reported by: | danilche | Owned by: | liucougar |
---|---|---|---|
Priority: | high | Milestone: | future |
Component: | Editor | Version: | 1.2.3 |
Keywords: | editor form | Cc: | |
Blocked By: | Blocking: |
Description
if a dijit.Editor widget exists in the middle of a form, under IE, all the subsequent fields don't get submitted, e.g.:
<form action="/form_target.html" method="POST">
<p><input type="text" name="field1" value="foo" /> <p><div id="editorNode" class="tundra">Hello, world!</div> <p><input type="text" name="field2" value="bar" />
</form>
The field 'field1' gets submitted, but not 'field2'. if you send a 'close()' to the Editor first, then the form submission works fine.
Change History (8)
comment:1 Changed 12 years ago by
comment:2 Changed 12 years ago by
not sure it's valid to have a block element like a DIV inside a P. That may be at the root of your problem.
comment:3 Changed 12 years ago by
Nesting block elements is valid, even <div> within <p> AFAIK, and this is definitely not the problem here -- I just tried removing every single <p> tag, and IE still omits the rest of the form after the dijit.Editor.
comment:4 Changed 12 years ago by
Another interesting datum... if the form is set to 'enctype="multipart/form-data"', it works under IE. Enctype "application/x-www-form-urlencoded" breaks. Curiously, it also submits an array of empty form variable values corresponding to the Editor controls. here is my POST form content dump with 'enctype="multipart/form-data"':
ARGS => HASH(0x102443320) (3 members) => ARRAY(0x10167af40) (11 members) [0] => ✓Paste [1] => ✓Bold [2] => ✓Italic [3] => ✓Underline [4] => ✓Strikethrough [5] => ✓Numbered List [6] => ✓Bullet List [7] => ✓Align Left [8] => ✓Align Right [9] => ✓Align Center [10] => ✓Justify field1 => foo field2 => bar
The 11-element array represents 11 submitted form 'values' named "" -- an empty string. IE7 apparently thinks that the editor controls represent form elements.
If I set the form to method 'GET', I instead get this peculiar -- and clearly broken -- URL:
comment:6 Changed 12 years ago by
Probably an IE bug with iframe inside a form element. I tried this in IE8 with dojo trunk revision [16492] and it worked OK.
comment:7 Changed 12 years ago by
Milestone: | tbd → future |
---|
comment:8 Changed 8 years ago by
Component: | Dijit → Editor |
---|---|
Resolution: | → wontfix |
Status: | new → closed |
I think we'll desupport IE6 & IE7 before we get around to fixing this.
Just to clarify, the dijit.Editor in this case got created programatically in my code, but it works the same for editor created from dojoType="dijit.Editor".