Class Form

  • Contents
  • Before you begin
  • Create new form
  • Add form attribute
  • Add form field
  • Form property and method

Create new form

$form=new Form('variable',url('docs/post'),'form-id','form-class');

Add form class

$form->addClass('-addclass');

Add form config

$form->addConfig($key,$value);

Add form attribute

$form->addAttr('onsubmit','javascript');

Add form data

$form->addData('checkvalid',true);

Result <form data-checkvalid="true" >

Add form field

Add text field

	$form->addField(
	'fieldname',
	array(
		'type'=>'text',
		'label'=>'Label',
		'value'=>'Value',
	),
);

Add textarea field

$form->addField(
	'fieldname',
	array(
		'type'=>'textarea',
		'label'=>'Label',
		'value'=>'Value',
	),
);

Add select field

$form->addField(
	'fieldname',
	array(
		'type'=>'select',
		'label'=>'Label',
		'options'=>array('key1'=>'value1','key2'=>'value2'),
		'value'=>'Value',
	),
);

Add radio field

$form->addField(
	'fieldname',
	array(
		'type'=>'radio',
		'label'=>'Label',
		'options'=>array('key1'=>'value1','key2'=>'value2'),
		'value'=>'Value',
	),
);

Add checkbox field

$form->addField(
	'fieldname',
	array(
		'type'=>'checkbox',
		'label'=>'Label',
		'options'=>array('key1'=>'value1','key2'=>'value2'),
		'value'=>'Value',
	),
);

Group Button

$form->addField(
	'location',
	array(
		'type' => 'text',
		'label' => 'ละติจูด-ลองจิจูด',
		'value' => $landInfo->latlng,
		'posttext' => '<div class="input-append"><span><a id="clear-gis" class="btn -link -sg-16" href="javascript:void(0)"><i class="icon -material -gray -sg-16">cancel</i></a></span><span><a id="save-gis" class="btn -link -sg-16" href="javascript:void(0)" ><i class="icon -material -gray -sg-16">done</i></a></span></div>',
		'container' => '{class: "-group"}',
	)
);

Add primary button field

$form->addField(
	'fieldname',
	array(
		'type'=>'button',
		'value'=>'<i class="icon -material">done_all</i><span>Save</span>',
	)
);

Add single button field with config

$form->addField(
	'save',
	array(
		'type'=>'button',
		'name'=>'save',
		'items'=>array(
			'type'=>'submit',
			'class'=>'-primary',
			'value'=>'<i class="icon -material">done_all</i><span>Save</span>',
		),
	)
);

Add multiple button field with config

$form->addField(
	'submit',
	array(
		'type'=>'button',
		'items'=>array(
			'save'=>array(
				'type'=>'submit',
				'class'=>'-primary',
				'value'=>'<i class="icon -material">done_all</i><span>Save</span>'
			),
			'cancel'=>array(
				'type'=>'cancel',
				'value'=>'<i class="icon -material">cancel</i><span>Cancel</span>'
			),
			'reset'=>array(
				'type'=>'reset',
				'value'=>'<i class="icon -material">reset</i><span>Reset</span>'
			),
		),
	)
);

Show form

$ret=$form->build();

Class constructor

Form($variable,$action,$id,$class='form');

Property :

Object $config
$config->class='form';

Method :

Form::addClass($class)
Form::addConfig($key,$value)
Form::addData($key,$value)
Form::addField($key,$value)
Form::show($formId)