Author: dolander
Date: Wed Aug 31 09:05:31 2005
New Revision: 265520
URL: http://svn.apache.org/viewcvs?rev=265520&view=rev
Log:
Update the Form Controls document.
Modified:
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsFormControls.xml
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsHtmlMapping.xml
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/site.xml
Modified:
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsFormControls.xml
URL:
http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsFormControls.xml?rev=265520&r1=265519&r2=265520&view=diff
==============================================================================
---
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsFormControls.xml
(original)
+++
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsFormControls.xml
Wed Aug 31 09:05:31 2005
@@ -7,7 +7,7 @@
</header>
<body>
<section id="Intro">
- <title>NetUI Form Control Tags</title>
+ <title>Introduction</title>
<p> The following table summarizes the two basic NetUI tags which
render as form controls. There
are basic types, simple controls and group controls. The
simple controls map directly
to a single HTML element. The group controls map to more than
one HTML element, for example
@@ -29,32 +29,32 @@
<tr><td><netui:form></td><td>None</td></tr>
<tr><td><netui:hidden></td><td><code>java.lang.String</code> or
<code>java.lang.String[]</code></td></tr>
<tr><td><netui:imageButton></td><td>None</td></tr>
-
<tr><td><netui:radioButtonGroup></td><td><code>java.lang.String[]</code></td></tr>
+
<tr><td><netui:radioButtonGroup></td><td><code>java.lang.String</code></td></tr>
<tr><td><netui:radioButtonOption></td><td>None, See the
<code>radioButtonGroup</code> tag</td></tr>
<tr><td><netui:select></td><td><code>java.lang.String</code> or
<code>java.lang.String[]</code></td></tr>
<tr><td><netui:selectOption></td><td>None, See the
<code>select</code> tag</td></tr>
<tr><td><netui:textArea></td><td><code>java.lang.String[]</code></td></tr>
<tr><td><netui:textBox></td><td><code>java.lang.String[]</code></td></tr>
</table>
- <p></p>
- <section id="ExampleLink">
- <title>NetUI Form Controls Example</title>
- <p>All of the code fragments in this topic come from a single
example. The example
- source can be found in the <a
href="site:pageflow_tag_formControls_example">Form Controls Example</a>.
- </p>
- </section>
- <section id="Anchor">
- <title>Anchor</title>
- <p> Though not technically a form control, the
<code><netui:anchor></code> can be used to
- submit a form. It does this through a JavaScript function
that is dynamically added to the page.
- In the following example the anchor is found inside of the
<code><netui:form></code>, which
- is a requirement for using a anchor to submit a form. In
order to submit a form, the
- <code>formSubmit</code> attribute is set to
<code>true</code>. In addition, there
- is no requirement to set an <code>action</code> or
<code>href</code> on the anchor.
- </p>
- <p> The anchor does not bind to a <code>dataSource</code> of
any type.
- </p>
- <source>
+ </section>
+ <section id="ExampleLink">
+ <title>NetUI Form Controls Example</title>
+ <p>All of the code fragments in this topic come from a single
example. The example
+ source can be found in the <a
href="site:pageflow_tag_formControls_example">Form Controls Example</a>.
+ </p>
+ </section>
+ <section id="Anchor">
+ <title>Anchor</title>
+ <p> Though not technically a form control, the
<code><netui:anchor></code> can be used to
+ submit a form. It does this through a JavaScript function
that is dynamically added to the page.
+ In the following example the anchor is found inside of the
<code><netui:form></code>, which
+ is a requirement for using a anchor to submit a form. In
order to submit a form, the
+ <code>formSubmit</code> attribute is set to <code>true</code>.
In addition, there
+ is no requirement to set an <code>action</code> or
<code>href</code> on the anchor.
+ </p>
+ <p> The anchor does not bind to a <code>dataSource</code> of any
type.
+ </p>
+ <source>
<netui:form>
...
<netui:anchor <strong>formSubmit="true"</strong>>Submit Form Through a
Link</netui:anchor>
@@ -86,21 +86,21 @@
...
<netui:button type="submit">Submit the Form</netui:button>
</netui:form>
- </source>
- </section>
- <section id="CheckBox">
- <title>CheckBox</title>
- <p> The <code><netui:checkBox></code> binds a boolean value
to a <code>dataSource</code>.
- The Checkbox will generate an <code><input
type="checkbox"></code> HTML element.
- The natural type of the <code>dataSource</code> being
bound to is typically a
- <code>boolean</code> or <code>java.lang.Boolean</code>.
In addition, it is possible
- to bind to a <code>java.lang.String</code>.
- </p>
- <p>
- In the following example, there are three checkboxes which
are bound to a <code>boolean</code>,
- <code>java.lang.Boolean</code> and a
<code>java.lang.String</code>.
- </p>
- <source><![CDATA[
+ </source>
+ </section>
+ <section id="CheckBox">
+ <title>CheckBox</title>
+ <p> The <code><netui:checkBox></code> binds a boolean value to
a <code>dataSource</code>.
+ The Checkbox will generate an <code><input
type="checkbox"></code> HTML element.
+ The natural type of the <code>dataSource</code> being bound to
is typically a
+ <code>boolean</code> or <code>java.lang.Boolean</code>. In
addition, it is possible
+ to bind to a <code>java.lang.String</code>.
+ </p>
+ <p>
+ In the following example, there are three checkboxes which are
bound to a <code>boolean</code>,
+ <code>java.lang.Boolean</code> and a
<code>java.lang.String</code>.
+ </p>
+ <source><![CDATA[
<table>
<tr><th align="right">CheckBox [boolean]</th>
<td><netui:checkBox dataSource="actionForm.checkBox"/></td></tr>
@@ -110,10 +110,10 @@
<td><netui:checkBox dataSource="actionForm.checkBoxString"/></td></tr>
</table>
]]></source>
- <p> In the <code>FormData</code>, the following three
properties are being bound to by the above
- NetUI tags.
- </p>
- <source>
+ <p> In the <code>FormData</code>, the following three properties
are being bound to by the above
+ NetUI tags.
+ </p>
+ <source>
private boolean checkBox;
private Boolean checkBoxBoolean;
private String checkBoxString;
@@ -139,26 +139,29 @@
this.checkBoxString = checkBoxString;
}
</source>
- </section>
- <section id="CheckBoxGroup">
- <title>CheckBoxGroup</title>
- <p> The <code><netui:checkBoxGroup></code> creates a group
of boolean values. Multiple
- values may be selected at one time. The natural type for
the <code>dataSource</code>
- is a <code>java.lang.String[]</code>. Each
<code>CheckBoxOption</code> contains a
- value that will be posted back if the item is selected.
See the <a href="#checkBoxOption">
- CheckBoxOption</a> for more information on how options are
specified.
- </p>
- <p> There are two methods for creating the options which
create the items inside of the
- group. The body of the tag may contain
<code><CheckBoxOption></code> tags or
- the <code>optionsDataSource</code> may bind to an array of
values. When using the
- <code>optionsDataSource</code> this tag may act as a
repeater. This allows for
- control of both the layout and the form of the options.
- </p>
- <p> In the following example, the a CheckBoxGroup contains
four children defined
- through options. When the form is posted, all of the
values that are selected
- (checked) will be posted back to an array in the
<code>FormData</code>.
- </p>
- <source><![CDATA[
+ </section>
+ <section id="CheckBoxGroup">
+ <title>CheckBoxGroup</title>
+ <p> The <code><netui:checkBoxGroup></code> creates a group of
boolean values. Multiple
+ values may be selected at one time. The natural type for the
<code>dataSource</code>
+ is a <code>java.lang.String[]</code>. Each
<code>CheckBoxOption</code> contains a
+ value that will be posted back if the item is selected. See
the <a href="#checkBoxOption">
+ CheckBoxOption</a> for more information on how options are
specified. In addition,
+ the repeating version of the CheckBoxGroup is covered in the
advanced topic
+ on <a
href="site:pageflow_tag_repeating_checkboxgroup">Repeating CheckBoxGroup</a>.
+ </p>
+ <p> There are two methods for creating the options which create
the items inside of the
+ group. The body of the tag may contain
<code><netui:checkBoxOption></code> tags or
+ the <code>optionsDataSource</code> may bind to an array of
values. When using the
+ <code>optionsDataSource</code> this tag may act as a
+ <a href="site:pageflow_tag_repeating">repeater</a>. This
allows for
+ control of both the layout and the presentation of the options.
+ </p>
+ <p> In the following example, the a CheckBoxGroup contains four
children defined
+ through options. When the form is posted, all of the values
that are selected
+ (checked) will be posted back to an array in the
<code>FormData</code>.
+ </p>
+ <source><![CDATA[
<netui:checkBoxGroup dataSource="actionForm.checkBoxGroup"
orientation="vertical">
<netui:checkBoxOption value="Check One"/>
<netui:checkBoxOption value="Check Two"/>
@@ -166,10 +169,10 @@
<netui:checkBoxOption value="Check Four"/>
</netui:checkBoxGroup>
]]></source>
- <p> The following property in the <code>FormData</code> will
recieve the results of the
- posted CheckBoxGroup.
- </p>
- <source>
+ <p> The following property in the <code>FormData</code> will
recieve the results of the
+ posted CheckBoxGroup.
+ </p>
+ <source>
private String[] checkBoxGroup;
public String[] getCheckBoxGroup() {
@@ -178,21 +181,22 @@
public void setCheckBoxGroup(String[] checkBoxGroup) {
this.checkBoxGroup = checkBoxGroup;
}
- </source>
- </section>
- <section id="CheckBoxOption">
- <title>CheckBoxOption</title>
- <p>The <code><netui:checkBoxOption></code> is a tag that
defines a item within a
- <code><netui:checkBoxGroup</code>. An has a required
<code>value</code> attribute
- which defines the value that will be posted back when the
generated checkbox is
- selected. There is also an optional <code>label</code>
attribute that defines
- a text label for the checkbox. if the <code>label</code>
is not specified the
- <code>value</code> attributes value will be used.
- </p>
- <p> In the CheckBoxGroup defined below, there are four
<code><netui:checkBoxOptions></code>
- tags. All of them specify just the <code>value</code>
attribute.
- </p>
- <source><![CDATA[
+ </source>
+ </section>
+ <section id="CheckBoxOption">
+ <title>CheckBoxOption</title>
+ <p>The <code><netui:checkBoxOption></code> is a tag that
defines an item within a
+ <code><netui:checkBoxGroup></code>. The tag has a required
<code>value</code> attribute
+ which defines the value that will be posted back when the
generated checkbox is
+ selected. There is also an optional <code>label</code>
attribute that defines
+ a text label for the checkbox. If the <code>label</code> is
not specified the
+ <code>value</code> attributes value will be used.
+ </p>
+ <p> In the CheckBoxGroup defined below, there are four
<code><netui:checkBoxOption></code>
+ tags. All of them specify just the <code>value</code>
attribute which is used for both
+ the value and label in the generated HTML.
+ </p>
+ <source><![CDATA[
<netui:checkBoxGroup dataSource="actionForm.checkBoxGroup"
orientation="vertical">
<netui:checkBoxOption value="Check One"/>
<netui:checkBoxOption value="Check Two"/>
@@ -200,37 +204,37 @@
<netui:checkBoxOption value="Check Four"/>
</netui:checkBoxGroup>
]]></source>
- </section>
- <section id="FileUpload">
- <title>FileUpload</title>
- <p> The <code><fileUpload></code> tag allows a file to be
uploaded to the server. By
- default, this tag is not enabled because multipart request
handling is disabled.
- The only supported
- data type that can be bound to is
<code>org.apache.struts.upload.FormFile</code>. If
- multipart handling is enabled, when the form is submitted,
the contents of the file
- will be posted to the server.
- </p>
- <p> By default, multipart request handling is disabled. There
are two ways to enable
- handling, you may turn it on for the WebApp by setting a
configuration option in the
- <code>beehive-netui-config.xml</code> file or you may turn
it on for a page flow
- by setting the Jpf.MultipartHandler annotation.
- </p>
- <p> In the example below, the
<code><netui:fileUpload></code> tag is used to upload
- a file to the server. In order to use the file upload tag
you must set the
- <code>enctype</code> on the <code><netui:form</code> to
<code>multipart/form-data</code>.
- This is required to enable multipart data. The
<code>dataSource</code> is bound
- to a property of type
<code>org.apache.struts.upload.FormFile</code>.
- </p>
- <source>
+ </section>
+ <section id="FileUpload">
+ <title>FileUpload</title>
+ <p> The <code><fileUpload></code> tag allows a file to be
uploaded to the server. By
+ default, this tag is not enabled because multipart request
handling is disabled.
+ The only supported
+ data type that can be bound to is
<code>org.apache.struts.upload.FormFile</code>. If
+ multipart handling is enabled, when the form is submitted, the
contents of the file
+ will be posted to the server.
+ </p>
+ <p> By default, multipart request handling is disabled. There are
two ways to enable
+ handling, you may turn it on for the WebApp by setting a
configuration option in the
+ <code>beehive-netui-config.xml</code> file or you may turn it
on for a page flow
+ by setting the Jpf.MultipartHandler annotation.
+ </p>
+ <p> In the example below, the <code><netui:fileUpload></code>
tag is used to upload
+ a file to the server. In order to use the file upload tag you
must set the
+ <code>enctype</code> on the <code><netui:form</code> to
<code>multipart/form-data</code>.
+ This is required to enable multipart data. The
<code>dataSource</code> is bound
+ to a property of type
<code>org.apache.struts.upload.FormFile</code>.
+ </p>
+ <source>
<netui:form action="submit" <strong>enctype="multipart/form-data"</strong>>
...
<netui:fileUpload dataSource="actionForm.fileUpload"/>
</netui:form>
- </source>
- <p> The following is the <code>FormData</code> property that
will recieve the
- information and data associated with the file that was
uploaded.
- </p>
- <source>
+ </source>
+ <p> The following is the <code>FormData</code> property that will
recieve the
+ information and data associated with the file that was
uploaded.
+ </p>
+ <source>
private FormFile fileUpload;
public FormFile getFileUpload() {
@@ -239,48 +243,54 @@
public void setFileUpload(FormFile fileUpload) {
this.fileUpload = fileUpload;
}
- </source>
- <p> In this example, multipart handling was enabled for
in-memory support using
- an annotation on the page flow.
- </p>
- <source>
+ </source>
+ <p> In this example, multipart handling was enabled for in-memory
support using
+ an annotation on the page flow.
+ </p>
+ <source>
@Jpf.Controller(
simpleActions={
@Jpf.SimpleAction(name="begin", path="formTest.jsp")
},
<strong>multipartHandler=Jpf.MultipartHandler.memory</strong>
)
- </source>
- <p> The following modification to the
<code>beehive-netui-config.xml</code> file will
- turn on in-memory processing of multipart requests for the
entire WebApp. See
- the <a
href="site:config_description">beehive-netui-config.xml File Reference</a>
- for information on creating an initial
<code>beehive-netui-config.xml</code>.
- </p>
- <source>
+ </source>
+ <p> The following modification to the
<code>beehive-netui-config.xml</code> file will
+ turn on in-memory processing of multipart requests for the
entire WebApp. See
+ the <a href="site:config_description">beehive-netui-config.xml
File Reference</a>
+ for information on creating an initial
<code>beehive-netui-config.xml</code>.
+ </p>
+ <source>
<pageflow-config>
<multipart-handler>memory</multipart-handler>
</pageflow-config>
- </source>
- </section>
- <section id="Form">
- <title>Form</title>
- <p>The <code><netui:form></code> tag creates the HTML
<code><form></code> element.
- It specifies the action to run in the page flow. If the
action has specifies a
- parameter that is a
- subclass of <code>FormData</code> a bean will be populated
by the page flow framework
- with values posted by the controls contained in the form.
In the example below,
- the form will call the page flow <code>submit</code>
action.
- </p>
- <source>
-<netui:form <strong>action="submit"</strong> enctype="multipart/form-data">
+ </source>
+ </section>
+ <section id="Form">
+ <title>Form</title>
+ <p>The <code><netui:form></code> tag creates the HTML
<code><form></code> element.
+ It specifies the action to run in the page flow. If the
action has specifies a
+ parameter that is a
+ subclass of <code>FormData</code> a bean will be populated by
the page flow framework
+ with values posted by the controls contained in the form. In
the example below,
+ the form will call the page flow <code>submit</code> action.
+ </p>
+ <source>
+<netui:form <strong>action="submit"</strong>>
...
</netui:form>
- </source>
- <p> The following action defined in the page flow controller
will be called when the
- form is submitted. An instance of <code>FormBean</code>
is created and populated
- by the contents of the request.
- </p>
- <source>
+ </source>
+ <p> <strong>NOTE:</strong> the
<code>enctype="multipart/form-data"</code> from the
+ FileUpload example is present because the
<code><netui:fileUpload></code> tag is
+ being used
+ and requires multipart request handling. This is typically
not used for simple
+ form posting.
+ </p>
+ <p> The following action defined in the page flow controller will
be called when the
+ form is submitted. An instance of <code>FormBean</code> is
created and populated
+ by the contents of the request.
+ </p>
+ <source>
@Jpf.Action(
[EMAIL PROTECTED](name="success",
path="results.jsp",
@@ -292,28 +302,27 @@
Forward fwd = new Forward("success", "bean", formBean);
return fwd;
}
-
- </source>
- </section>
- <section id="Hidden">
- <title>Hidden</title>
- <p> The <code><netui:hidden></code> tag creates the HTML
<code><input type="hidden"></code>
- element. There is no visual representation of a hidden
field, but it's <code>value</code>
- will be posted to the server when the form is posted. The
<code><netui:hidden></code>
- is a bit different than other form controls. It contains
both a <code>dataInput</code>
- and a <code>dataSource</code> attribute. This allows
binding a value from a source
- that differs from what is posted back to the server. If
the <code>dataInput</code> is
- not set, the <code>dataSource</code> is used as a
read/write binding.
- </p>
- <p> In the example below, there are a number of hidden fields
defined. All of them bind
- values out of the <code>pageFlow</code> implicit object
(see the
- <a href="site:databinding">Data binding to NetUI Implicit
Objects</a> for more
- information. In the example, hidden binds to different
types of data objects.
- The first simply binds the value back to a
<code>java.lang.String</code>
- value. The second and third hidden fiels bind to the same
array of
- <code>java.lang.String</code>s. The final hidden binds to
a boolean value.
- </p>
- <source><![CDATA[
+ </source>
+ </section>
+ <section id="Hidden">
+ <title>Hidden</title>
+ <p> The <code><netui:hidden></code> tag creates the HTML
<code><input type="hidden"></code>
+ element. There is no visual representation of a hidden field,
but it's <code>value</code>
+ will be posted to the server when the form is posted. The
<code><netui:hidden></code>
+ is a bit different than other form controls. It contains both
a <code>dataInput</code>
+ and a <code>dataSource</code> attribute. This allows binding
a value from a source
+ that differs from what is posted back to the server. If the
<code>dataInput</code> is
+ not set, the <code>dataSource</code> is used as a read/write
binding.
+ </p>
+ <p> In the example below, there are a number of hidden fields
defined. All of them bind
+ values out of the <code>pageFlow</code> implicit object (see
the
+ <a href="site:databinding">Data binding to NetUI Implicit
Objects</a> for more
+ information. In the example, hidden binds to different types
of data objects.
+ The first simply binds the value back to a
<code>java.lang.String</code>
+ value. The second and third hidden fiels bind to the same
array of
+ <code>java.lang.String</code>s. The final hidden binds to a
boolean value.
+ </p>
+ <source><![CDATA[
<table>
<tr><th align="right">Hidden</th>
<td><netui:hidden dataInput="${pageFlow.hidden}"
dataSource="actionForm.hidden"/></td></tr>
@@ -325,10 +334,10 @@
<td><netui:hidden dataInput="${pageFlow.hiddenBoolean}"
dataSource="actionForm.hiddenBoolean"/></td></tr>
</table>
]]></source>
- <p> The following properties are defined in the
<code>FormData</code> and are set
- by the above hidden elements when the form is submitted.
- </p>
- <source>
+ <p> The following properties are defined in the
<code>FormData</code> and are set
+ by the above hidden elements when the form is submitted.
+ </p>
+ <source>
// hidden
private String hidden;
private String[] hiddenArray;
@@ -354,34 +363,192 @@
public void setHiddenBoolean(boolean hiddenBoolean) {
this.hiddenBoolean = hiddenBoolean;
}
- </source>
- </section>
- <section id="ImageButton">
- <title>ImageButton</title>
- <p> The <code><netui:imageButton></code> creates the HMTL
<code><input type="image"</code>
- element. The result is a image is used to submit the
form. The source of the image
- is specified in the <code>src</code> attribute. The
ImageButton does not bind to any
- data. In addition, it must appear inside of the form.
- </p>
- <source>
+ </source>
+ </section>
+ <section id="ImageButton">
+ <title>ImageButton</title>
+ <p> The <code><netui:imageButton></code> creates the HMTL
<code><input type="image"</code>
+ element. The result is a image is used to submit the form.
The source of the image
+ is specified in the <code>src</code> attribute. The
ImageButton does not bind to any
+ data. In addition, it must appear inside of the form.
+ </p>
+ <source>
<netui:form>
...
<netui:imageButton src="insert.gif"/>
</netui:form>
- </source>
- </section>
- <section id="RadioButtonGroup">
- <title>RadioButtonGroup</title>
- </section>
- <section id="RadioButtonOption">
- <title>RadioButtonOption</title>
- </section>
- <section id="TextArea">
- <title>TextArea</title>
+ </source>
+ </section>
+ <section id="RadioButtonGroup">
+ <title>RadioButtonGroup</title>
+ <p> The <code><netui:radioButtonGroup></code> is similar to the
+ <a
href="#CheckBoxGroup"><code><netui:checkBoxGroup></code></a>. It binds to
+ a group of boolean values, but instead of allowing multiple
selection there is
+ a single selection. The underlying HTML produced is a set of
HTML
+ <code><input type="radio"></code> where the name is the
same value for each option,
+ thus creating
+ a group of radio buttons, of which only one may be selected at
a time. The natural
+ binding for the RadioButtonGroup is a
<code>java.lang.String</code>. See the
+ <a href="#RadioButtonOption">RadioButtonOption</a> topic for
information on creating
+ the options. In addition,
+ the repeating version of the RadioButtonGroup is covered in
the advanced topic
+ on <a
href="site:pageflow_tag_repeating_radiobuttongroup">Repeating
RadioButtonGroup</a>.
+
+ </p>
+ <p> There are two methods for creating the options whichc create
the radio buttons
+ inside of the group. The body of the tag may contain
<code><netui:RadioButtonOptions></code>
+ tags or the <code>optionsDataSource</code> my bind to an array
of values. When using the
+ <code>optionsDataSource</code>, this tag may act as a
+ <a href="site:pageflow_tag_repeating">repeater</a>. This
allows for control of both
+ the layout and presentation of the options.
+ </p>
+ <p> In the following example, the RadioButtonGroup contains four
options defined through
+ the RadioButtonOption tag. When the form is posted, if one of
the options
+ is selected it's <code>value</code> will be posted back.
+ </p>
+ <source><![CDATA[
+<netui:radioButtonGroup dataSource="actionForm.radioButtonGroup"
orientation="vertical">
+ <netui:radioButtonOption value="Radio One"/>
+ <netui:radioButtonOption value="Radio Two"/>
+ <netui:radioButtonOption value="Radio Three"/>
+ <netui:radioButtonOption value="Radio Four"/>
+</netui:radioButtonGroup>
+]]></source>
+ <p> The natural binding for a
<code><netui:radioButtonGroup></code> is a
+ <code>java.lang.String</code>. The following property defined
in the <code>FormData</code>
+ recieves the results of posting the form.
+ </p>
+ <source>
+private String radioButtonGroup;
+
+public String getRadioButtonGroup() {
+ return radioButtonGroup;
+}
+public void setRadioButtonGroup(String radioButtonGroup) {
+ this.radioButtonGroup = radioButtonGroup;
+}
+ </source>
+ </section>
+ <section id="RadioButtonOption">
+ <title>RadioButtonOption</title>
+ <p>The <code><netui:radioButtonOption></code> is a tag that
defines an item within
+ a <code><netui:radioButtonGroup></code>. The tag has a
required <code>value</code>
+ attribute which defines the value that will be posted back
when the radio button
+ option is selected. There is also an optional
<code>label</code> attribute that
+ defines a text label for the radio button. If the
<code>label</code> is not
+ specified, the <code>value</code> attributes value will be
used for the label.
+ </p>
+ <p> In the RadioButtonGroup defined below, there are four
<code><netui:radioButtonOption</code>
+ tags. All of them specify just the value attribute which is
used for both the value and label
+ in the generated HTML.
+ </p>
+ <source><![CDATA[
+<netui:radioButtonGroup dataSource="actionForm.radioButtonGroup"
orientation="vertical">
+ <netui:radioButtonOption value="Radio One"/>
+ <netui:radioButtonOption value="Radio Two"/>
+ <netui:radioButtonOption value="Radio Three"/>
+ <netui:radioButtonOption value="Radio Four"/>
+ </netui:radioButtonGroup>
+ ]]></source>
+ </section>
+ <section id="Select">
+ <title>Select</title>
+ <p> The <code><netui:select></code> is a control allowing a
user to select one
+ or more items from a list of items. There
+ are two primary modes, single selection and multiple
selection. There are two ways to
+ specify the items of the select control, you may use the
<code><netui:selectOption></code>
+ or the <code>optionsDataSource</code> attribute on the tag.
For more information on
+ see the <a href="#SelectOption">SelectOption</a> topic. In
addition, the select supports a
+ repeating mode that allows control over the order of the
options when using the
+ <code>optionsDataSource</code>. For more information see the
+ <a href="site:pageflow_tag_repeating_select">Repeating
Select</a> topic.
+ </p>
+ <section id="SingleSelect">
+ <title>Single Selection</title>
+ <p>Single selection is the default behavior for a select
control. It allows a single
+ value from the list to be selected. The natural data type
that is bound to is
+ a <code>java.lang.String</code>.
+ </p>
+ <p> In the example below, a select box contains four option.
+ </p>
+ <source><![CDATA[
+<netui:select dataSource="actionForm.singleSelect">
+ <netui:selectOption value="SelectOne">Select One</netui:selectOption>
+ <netui:selectOption value="SelectTwo">Select Two</netui:selectOption>
+ <netui:selectOption value="SelectThree">Select Three</netui:selectOption>
+ <netui:selectOption value="SelectFour">Select Four</netui:selectOption>
+</netui:select>
+]]></source>
+ <p> When the above select control is posted it is bound to a
<code>java.lang.String</code>
+ property on the <code>FormData</code>.
+ </p>
+ <source>
+private String singleSelect;
+
+public String getSingleSelect() {
+ return singleSelect;
+}
+public void setSingleSelect(String singleSelect) {
+ this.singleSelect = singleSelect;
+}
+ </source>
</section>
- <section id="TextBox">
- <title>TextBox</title>
+ <section id="MultipleSelect">
+ <title>Multiple Selection</title>
+ <p> To create a multiple select control you specify
<code>multiple="true"</code> in
+ the <code><netui:select></code> tag. A multiple select
control allows zero or
+ more items to be selected and posted back to the server.
The natural binding type
+ is <code>java.lang.String[]</code>.
+ </p>
+ <p> The example below defines a multiple select control by
setting the
+ <code>multiple</code> attribute to <code>true</code>.
This selection
+ has four options.
+ </p>
+ <source><![CDATA[
+<netui:select multiple="true" dataSource="actionForm.multiSelect">
+ <netui:selectOption value="SelectOne">Select One</netui:selectOption>
+ <netui:selectOption value="SelectTwo">Select Two</netui:selectOption>
+ <netui:selectOption value="SelectThree">Select Three</netui:selectOption>
+ <netui:selectOption value="SelectFour">Select Four</netui:selectOption>
+</netui:select>
+]]></source>
+ <p> The above select control will post zero or more values into
the following
+ property on the <code>FormData</code>.
+ </p>
+ <source>
+private String[] multiSelect;
+
+public String[] getMultiSelect() {
+ return multiSelect;
+}
+public void setMultiSelect(String[] multiSelect) {
+ this.multiSelect = multiSelect;
+}
+ </source>
</section>
</section>
- </body>
+ <section id="SelectOption">
+ <title>SelectOption</title>
+ <p> The <code><netui:selectOption></code> is used to create
statically defined options
+ for a <code><netui:select></code> control. The
<code>value</code> attribute is required
+ and specifies the value that will be posted if the option is
selected. In addition,
+ the body of the tag may contain a value that will be used to
display the option in
+ the select control. If the body is empty, then the
<code>value</code> will be used.
+ </p>
+ <source><![CDATA[
+<netui:select multiple="true" dataSource="actionForm.multiSelect">
+ <netui:selectOption value="SelectOne">Select One</netui:selectOption>
+ <netui:selectOption value="SelectTwo">Select Two</netui:selectOption>
+ <netui:selectOption value="SelectThree">Select Three</netui:selectOption>
+ <netui:selectOption value="SelectFour">Select Four</netui:selectOption>
+</netui:select>
+]]></source>
+ </section>
+ <section id="TextArea">
+ <title>TextArea</title>
+ </section>
+ <section id="TextBox">
+ <title>TextBox</title>
+ </section>
+ </body>
</document>
Modified:
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsHtmlMapping.xml
URL:
http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsHtmlMapping.xml?rev=265520&r1=265519&r2=265520&view=diff
==============================================================================
---
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsHtmlMapping.xml
(original)
+++
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/netui/tagsHtmlMapping.xml
Wed Aug 31 09:05:31 2005
@@ -37,6 +37,11 @@
<td><a href="site:pageflow_tag_formControls_checkbox">Form
Controls</a></td>
</tr>
<tr>
+ <td><input
type=checkbox></td><td>netui:checkBoxGroup</td><td>A group of checkboxes</td>
+ <td><a
href="site:pageflow_tag_formControls_checkboxgroup">Form Controls</a>,
+ <a
href="site:pageflow_tag_repeating_checkboxgroup">Repeating</a></td>
+ </tr>
+ <tr>
<td><input
type=file></td><td>netui:fileUpload</td><td>Form Control allowing a file to be
uploaded</td>
<td><a
href="site:pageflow_tag_formControls_fileupload">Form Controls</a></td>
</tr>
@@ -66,7 +71,13 @@
<td><label></td><td>netui:label</td><td>Create a label
to attach information to a Form Control</td><td></td>
</tr>
<tr>
- <td><input
type=radio></td><td>netui:radioButtonGroup</td><td>Form Control creating a
single selection radio button group</td><td></td>
+ <td><option></td><td>netui:selectOption</td><td>Create
an item inside of a select control</td>
+ <td><a
href="site:pageflow_tag_formControls_selectoption">Form Controls</a></td>
+ </tr>
+ <tr>
+ <td><input
type=radio></td><td>netui:radioButtonGroup</td><td>Form Control creating a
single selection radio button group</td>
+ <td><a
href="site:pageflow_tag_formControls_radiobuttongroup">Form Controls</a>,
+ <a
href="site:pageflow_tag_repeating_radiobuttongroup">Repeating</a></td>
</tr>
<tr>
<td><script></td><td>netui:scriptBlock</td><td>Create a
client side JavaScript block</td>
@@ -74,7 +85,9 @@
<a
href="site:pageflow_tagsXhtml_ScriptBlock">XHTML/HTML</a></td>
</tr>
<tr>
- <td><select></td><td>netui:select</td><td>Form Control
that creates a single or multiple selection</td><td></td>
+ <td><select></td><td>netui:select</td><td>Form Control
that creates a single or multiple selection</td>
+ <td><a href="site:pageflow_tag_formControls_select">Form
Controls</a>,
+ <a
href="site:pageflow_tag_repeating_select">Repeating</a></td>
</tr>
<tr>
<td><span></td><td>netui:span</td><td>Create an inline
span element</td><td></td>
Modified:
beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/site.xml
URL:
http://svn.apache.org/viewcvs/beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/site.xml?rev=265520&r1=265519&r2=265520&view=diff
==============================================================================
--- beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/site.xml
(original)
+++ beehive/trunk/docs/forrest/release/src/documentation/content/xdocs/site.xml
Wed Aug 31 09:05:31 2005
@@ -44,9 +44,19 @@
<pageflow_tag_formControls_form href="#Form" />
<pageflow_tag_formControls_hidden href="#Hidden" />
<pageflow_tag_formControls_imagebutton href="#ImageButton"
/>
+ <pageflow_tag_formControls_radiobuttongroup
href="#RadioButtonGroup" />
+ <pageflow_tag_formControls_radiobuttonoption
href="#RadioButtonOption" />
+ <pageflow_tag_formControls_select href="#Select" />
+ <pageflow_tag_formControls_selectoption
href="#SelectOption" />
+ <pageflow_tag_formControls_textarea href="#TextArea" />
+ <pageflow_tag_formControls_textbox href="#TextBox" />
</pageflow_tag_formControls>
<pageflow_tag_formControls_example
href="netui/tagsFormControlsExample.html"/>
- <pageflow_tag_repeating label="Repeating Form Controls"
href="netui/tagsFormRepeating.html"/>
+ <pageflow_tag_repeating label="Repeating Form Controls"
href="netui/tagsFormRepeating.html">
+ <pageflow_tag_repeating_checkboxgroup
href="#CheckBoxGroup" />
+ <pageflow_tag_repeating_radiobuttongroup
href="#RadioButtonGroup" />
+ <pageflow_tag_repeating_select href="#Select" />
+ </pageflow_tag_repeating>
<pageflow_tag_xhtml label="HTML/XHTML Support"
href="netui/tagsXhtml.html">
<pageflow_tagsXhtml_HtmlTag href="#HtmlTag" />
<pageflow_tagsXhtml_BodyTag href="#BodyTag" />