A form control component (such as TextField) whose id is "id" can confuse
client-side logic for the Form DOM object
-------------------------------------------------------------------------------------------------------------------
Key: TAP5-1207
URL: https://issues.apache.org/jira/browse/TAP5-1207
Project: Tapestry 5
Issue Type: Bug
Components: tapestry-core
Affects Versions: 5.2.0
Reporter: Howard M. Lewis Ship
Using Chrome's page inspector, I can see that the form's element has been
rewritten, from:
<form class="margin3-5-5" onsubmit="javascript:return
Tapestry.waitForPage(event);" action="/t5/widendev/searchadmin.removedoc.form"
method="post" id="form_3"
to:
<form class="margin3-5-5" onsubmit="javascript:return
Tapestry.waitForPage(event);" action="/t5/widendev/searchadmin.removedoc.form"
method="post" id="[object HTMLInputElement]"><div class="" style="display:
none; ">
....
ah, there is is:
<label for="id">ID</label>
<input class="normalField width60" size="5" id="id" name="id"
type="text"></input><img id="id_icon" class="t-error-icon t-invisible" alt=""
src="/assets/5.5.1_1/core/spacer.gif"/>
Having a form element with id "id" is bad!
Basically, each element of the form is mapped onto the Form as a property; so
HTMLInputElement#id overwrites the id property of the Form (changing it from
type string to type HTMLINputElement).
"id" and perhaps other names need to be added to the list of pre-reserved
element ids inside the Form.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.