XForms/Checkbox
From Wikibooks, the open-content textbooks collection
< XForms
Contents |
[edit] Motivation
You have a boolean true/false value and want an input control to have a simple checkbox for a yes/no or true/false answer.
[edit] Method
We will use a standard input control but use the bind statement to bind the instance to a boolean datatype. We will do this in two ways, one using a bind without an ID and using the bind with an id so that we can reference the bind statement.
Note that checkboxes can also be demonstrated by using the xf:select control. But in that case a series of space-delimited values is stored in the value associated with the control.
[edit] Screen Image
[edit] Link to XForms Application
[edit] Sample Program
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xf="http://www.w3.org/2002/xforms" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <head> <title>XForms Checkbox Demo</title> <style type="text/css">body {font-family: Helvetica, sans-serif;}</style> <xf:model> <!-- load the module test data into the model --> <xf:instance xmlns=""> <data> <bool1>true</bool1> <bool2>false</bool2> </data> </xf:instance> <!-- Here is where we indicate the datatypes of the instance variables --> <xf:bind nodeset="bool1" type="xs:boolean" /> <xf:bind id="bool2" nodeset="bool2" type="xs:boolean" /> </xf:model> </head> <body> <h1>XForms Checkbox Demo</h1> <xf:input ref="bool1"> <xf:label>Bool 1: </xf:label> </xf:input> <br/> <!-- use a named binding --> <xf:input bind="bool2"> <xf:label>Bool 2: </xf:label> </xf:input> <br/> <xf:output ref="bool1"> <xf:label>Bool 1: </xf:label> </xf:output> <br/> <xf:output bind="bool2"> <xf:label>Bool 2: </xf:label> </xf:output> </body> </html>
