The Range
element is meant to be paired with the Zend/Form/View/Helper/FormRange
for HTML5 inputs with type range. This element adds filters and validators to it's input filter specification in order to validate HTML5 range values on the server.
Basic Usage of Zend\Form\Element\Range
This element automatically adds a "type"
attribute of value "range"
.
use Zend\Form\Element;
use Zend\Form\Form;
$range = new Element\Range('range');
$range
->setLabel('Minimum and Maximum Amount')
->setAttributes(array(
'min' => '0', // default minimum is 0
'max' => '100', // default maximum is 100
'step' => '1', // default interval is 1
));
$form = new Form('my-form');
$form->add($range);
Note
Note: the min
, max
, and step
attributes should be set prior to calling Zend\Form::prepare(). Otherwise, the default input specification for the element may not contain the correct validation rules.
The following methods are in addition to the inherited methods of Zend\\Form\\Element\\Number
<zend.form.element.number.methods>
.
- getInputSpecification
getInputSpecification()
Returns a input filter specification, which includes
Zend\Filter\StringTrim
and will add the appropriate validators based on the values from themin
,max
, andstep
attributes. SeegetInputSpecification in Zend\\Form\\Element\\Number <zend.form.element.number.methods.get-input-specification>
for more information.The
Range
element differs fromZend\Form\Element\Number
in that theZend\Validator\GreaterThan
andZend\Validator\LessThan
validators will always be present. The default minimum is 1, and the default maximum is 100.Returns array