A component used to collect a provided date from the user using a client-side JavaScript calendar. Non-JavaScript clients can simply type into a text field..
| Name | Type | Flags | Default | Default Prefix | Description |
|---|---|---|---|---|---|
| clientId | String | prop:componentResources.id | literal | The id used to generate a page-unique client-side identifier for the component. If a component renders multiple times, a suffix will be appended to the to id to ensure uniqueness. The uniqued value may be accessed via the clientId property. | |
| disabled | boolean | false | prop | If true, then the field will render out with a disabled attribute (to turn off client-side behavior). Further, a disabled field ignores any value in the request when the form is submitted. | |
| icon | org.apache.tapestry.Asset | datefield.gif | asset | ||
| label | String | literal | The user presentable label for the field. If not provided, a reasonable label is generated from the component's id, first by looking for a message key named "id-label" (substituting the component's actual id), then by converting the actual id to a presentable string (for example, "userId" to "User Id"). | ||
| validate | org.apache.tapestry.FieldValidator | validate | The object that will perform input validation (which occurs after translation). The translate binding prefix is generally used to provide this object in a declarative fashion. | ||
| value | java.util.Date | Required | prop | The value parameter of a DateField must be a java.util.Date. |
Clicking the icon raises the popup calendar:
<html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd">
<body>
<t:form>
<div class="t-beaneditor">
<div class="t-beaneditrow">
<t:label for="date"/>
<t:datefield t:id="date"/>
</div>
<div class="t-beaneditrow">
<input type="submit" value="Update"/>
</div>
</div>
</t:form>
</body>
</html>
The use of the extra <div> elements is to trigger the CSS styles that are
usually used as part of aBeanEditForm. Just the
<t:datefield>
element is all that's really necessary.
The DateField component is based on the open source WebFX DatePicker widget.