View Source

h3. DateSpinner

The DateSpinner component uses a mobility-designed date selection component and may be optionally rendered depending on whether the mobile operating system is using iOS5 or Blackberry by using the "useNative" attribute. If the device is running iOS5 or Blackberry and useNative="true", then the inherent date selection component is used (so for iPhone, iPad running iOS5) the native dateSelection will be used (html5 input tag with type="date"). If iOS5 is not detected and the useNative attribute is false, then the <mobi:dateSpinner/> component renders a mobility designed non-browser solution which with popup selector, styled with <mobi:deviceStyleSheet/>. This component has mobi:ajax support.

{note}

Each device will popup the correct entry spinner that is styled as per the device; Jsf validation and conversion is supported. The non-iOS5 version will actually have built-in conversion for date, so as long as the default pattern of 'yyyy-MM-dd' is used, then no <f:convertDateTime pattern="yyyy-MM-dd" /> tag is required.
The developer will have to know what platforms they are creating applications for in that some of these options are not applicable to the iOS5 supported inherent selection.


{note}


h3. Usage

h4. How to use.
If enabling iOS5 if detected
{code}
<mobi:dateSpinner value="#{dateBean.someDate}" useNative="true"
<f:convertDateTime pattern="yyyy-MM-dd" timezone="MST"/>
</mobi:dateSpinner>
{code}


h4. Common Attributes


{panel}
*readonly* *disabled
{panel}
*singleSubmit* if true, submits itself (element) and triggers a full page response using the ICEfaces dom-diff algorithm (in other words, only what has changed on the view page). If false, then the field is not submitted until the form is.
{panel}

h4. For non-iOS5 only

{panel}{*}yearStart* the year to start inclusion of the year selector, default = 1980
{panel}
{panel}{*}yearEnd* the year to end inclusion of the year selector, default = 2020
{panel}
{panel}{*}pattern* for built in conversion so convertDateTime tag not required for this component, default = 'yyyy-MM-dd' to make it same as default pattern for built-in iOS5 date selector. Supported patterns include dd/MM/yyyy, MM-dd-yyyy, dd-MM-yyyy, yyyy-MM-dd, yyyy-dd-MM
{panel}
{panel}{*}timeZone* for built in conversion so convertDateTime tag not required for this component
{panel}
{panel}{*}locale* for built in conversion so convertDateTime tag not required for this component
{panel}

h4. For iOS5 & Blackberry only

{panel}{*}cols* number of columns for textarea for initial render
{panel}
{panel}{*}rows* number of rows for textarea
{panel}
{panel}{*}wrap* wrap the text if get to end of textarea
{panel}

{tip:title=TagLib Documentation}This section covers attributes involved in the typical use-cases for this component. For reference, the complete taglib documentation for this component is available [here|http://res.icesoft.org/docs/icemobile/v1_latest/tld/mobi/dateSpinner.html].{tip}