Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: 3.1
-
Fix Version/s: EE-3.0.0.GA_P01, 3.2
-
Component/s: Framework
-
Labels:None
-
Environment:IE8, IE9 Compat Mode
Description
I've tested this with both the ice:inputText and h:inputText components.
-
Hide
- Case11506Example2.war
- 9.37 MB
- Arran Mccullough
-
- META-INF/MANIFEST.MF 0.1 kB
- META-INF/context.xml 0.1 kB
- WEB-INF/classes/com/.../example/Item.class 0.3 kB
- WEB-INF/classes/.../example/TestBean.class 0.9 kB
- WEB-INF/lib/commons-beanutils.jar 226 kB
- WEB-INF/lib/commons-collections.jar 558 kB
- WEB-INF/lib/commons-digester.jar 140 kB
- WEB-INF/lib/commons-logging.jar 52 kB
- WEB-INF/lib/icefaces-ace.jar 2.92 MB
- WEB-INF/lib/icefaces-compat.jar 2.68 MB
- WEB-INF/lib/icefaces.jar 336 kB
- WEB-INF/lib/javax.faces.jar 2.48 MB
- WEB-INF/web.xml 2 kB
- pageOne.xhtml 0.9 kB
- welcomeICEfaces.xhtml 2 kB
-
- Case11506Example2.zip
- 19 kB
- Arran Mccullough
Activity
- All
- Comments
- History
- Activity
- Remote Attachments
- Subversion
They may want to use submitOnBlur="false":
http://wiki.icesoft.org/display/ICE/Single+Submit
Otherwise, this comes down to a browser difference.
Using submitOnBlur="false" has no change, this is the default I believe too. The updates are occurring when no value has changed in the input field.
In application.js, we define the enableSingleSubmit function and inside, override submitForm. Part of the logic in there is to check various events and such to see whether we should avoid submission. One of those checks looks like this:
var isText = ( (elementType == "text") ||
(elementType == "password") ||
(elementType == "textarea") );
if (isText) {
if ((eType == "click") || ((!useBlur) && (eType == "blur")))
}
Basically, if it's a text type field and the event is a click (or a blur, and by default this is false), then we simply return and avoid doing the form submission.
However in older versions of IE, the event is not "blur". Instead the eType is "focusout". So we need to add a check for that.
if ((eType == "click") || ((!useBlur) && ((eType == "blur") || eType == "focusout"))) {
Tested and committed changes to the branch and trunk.
Attached test case that shows issue.
Steps: