org.apache.tapestry.corelib.components.DateField

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..

[JavaDoc]

Component Inheritance

Component Parameters

NameTypeFlagsDefaultDefault PrefixDescription
clientIdStringprop:componentResources.idliteralThe 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.
disabledbooleanfalsepropIf 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.
iconorg.apache.tapestry.Assetdatefield.gifasset
labelStringliteralThe 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").
validateorg.apache.tapestry.FieldValidatorvalidateThe 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.
valuejava.util.DateRequiredpropThe value parameter of a DateField must be a java.util.Date.

Related Components

Examples

The DateField component is very easy to use, all the JavaScript is generated for you. Then end result looks like: Clicking the icon raises the popup calendar:

DateFieldDemo.tml

<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.

Notes

The DateField component is based on the open source WebFX DatePicker widget.


Back to index