[
https://issues.apache.org/jira/browse/TAP5-2481?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Howard M. Lewis Ship resolved TAP5-2481.
----------------------------------------
Resolution: Duplicate
> FormFragment can't be used in conjunction with HTML5 support
> ------------------------------------------------------------
>
> Key: TAP5-2481
> URL: https://issues.apache.org/jira/browse/TAP5-2481
> Project: Tapestry 5
> Issue Type: Bug
> Components: tapestry-core
> Affects Versions: 5.4
> Reporter: I D
>
> Steps to reproduce:
> # Use Chrome
> # Set SymbolConstants.ENABLE_HTML5_SUPPORT to true
> # Have a page with a form containing a FormFragment containing a field with
> the "required" validator
> # Hide the FormFragment
> # Attempt to submit the form
> # Note that nothing happens and the following JS error appears in the Chrome
> dev tools console: "An invalid form control with name='whatever' is not
> focusable."
> This is due to the fact that when SymbolConstants.ENABLE_HTML5_SUPPORT is set
> to true, the "required" validator adds a "required" attribute to the form
> field, which in turn makes the browser want to validate it.
> At first I thought this could be fixed simply by a slight modification:
> whenever a form fragment handles the prepareForSubmit event and sets the
> fragment's hidden element's "disabled" attribute, it should also set the
> "disabled" attributes of all inputs, selects, textareas etc contained therein
> to the same value. This will disable native browser validation for these
> fields.
> However, I then realized that the prepareForSubmit event isn't even triggered
> by the browser in this case.
> This means that we shouldn't even rely on the prepareForSubmit event here,
> and instead set the disabled attribute (in the generated hidden field as well
> as the actual ones) whenever the "events.formfragment.changeVisibility" is
> triggered.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)