当前位置: 首页 > 文档资料 > FuelPHP 中文文档 >

Form - 类別

优质
小牛编辑
116浏览
2023-12-01

Form 类别可以被用来建立单独的表单元素,或建立一个有验证的完整表单, 后者则是结合了 Fieldset 类别。

建立单独的表单元素

open($attributes = array(), $hidden = array())

建立一个表单开始标籤。

静态
参数
参数预设描述
$attributes
array()
一个做为 action 属性的字串或一个设定的阵列, 如果没给,action 将使用目前 Uri, 属性的值将被用作 HTML 标籤特性。
$hidden
array()
一个栏位名称和值的关联阵列, 将全部被设定为隐藏栏位。
回传字串
範例
// 回传 <form action="http://mydomain.com/uri/to/form" accept-charset="utf-8" method="post">
echo Form::open('uri/to/form');

// 回传 <form action="http://google.com/" accept-charset="utf-8" method="get">
echo Form::open(array('action' => 'http://google.com/', 'method' => 'get'));

close()

建立一个表单结束标籤。

静态
参数(无)
回传字串
範例
// 回传 </form>
echo Form::close();

input($field, $value = null, $attributes = array())

建立一个 html input 元素,它可以设定使用的栏位名称、值和标籤的属性, 或合为一个阵列做为第一个参数。

静态
参数
参数预设描述
$field必要栏位名称的字串或标籤属性的阵列。
$value
null
栏位值,当第一个参数是阵列时将被忽略。
$attributes
array()
这些将被用作 HTML 标籤特性。
回传字串
範例
echo Form::input('name', 'value', array('style' => 'border: 2px;'));
// 更多可以添加

button($field, $value = null, $attributes = array())

建立一个 html button 元素,它可以设定使用的栏位名称、值和标籤的属性, 或合为一个阵列做为第一个参数。

静态
参数
参数预设描述
$field必要栏位名称的字串或标籤属性的阵列。
$value
null
栏位值,当第一个参数是阵列时将被忽略。
$attributes
array()
这些将被用作 HTML 标籤特性。
回传字串
範例
echo Form::button('name', 'value', array('style' => 'border: 2px;'));

hidden($field, $value = null, $attributes = array())

这是一个 Form::input() 的别名,它会自动设定 type 属性为 'hidden'

csrf()

建立一个 HTML input 元素,带有自动设为产生的 CSRF 符记的 value 属性。

password($field, $value = null, $attributes = array())

这是一个 Form::input() 的别名,它会自动设定 type 属性为 'password'

radio($field, $value = null, $attributes = array())

这是一个 Form::input() 的别名,它会自动设定 type 属性为 'radio'
为了向下相容,此方法也接受:radio($field, $value = null, array $attributes = array())

静态
参数
参数预设描述
$field必要栏位名称的字串或标籤属性的阵列。
$value
null
栏位值,当第一个参数是阵列时将被忽略。
$checked
null
是否选取(如果是布林)或符合 $value (如果是字串), 当第一个参数是阵列时将被忽略。
$attributes
array()
这些将被用作 HTML 标籤特性。
回传字串
範例
echo Form::label('Male', 'gender');
echo Form::radio('gender', 'Male', true);
echo Form::label('Female', 'gender');
echo Form::radio('gender', 'Female');

checkbox($field, $value = null, $checked = null, $attributes = array())

这是一个 Form::input() 的别名,它会自动设定 type 属性为 'checkbox'
为了向下相容,此方法也接受:checkbox($field, $value = null, array $attributes = array())

静态
参数
参数预设描述
$field必要栏位名称的字串或标籤属性的阵列。
$value
null
栏位值,当第一个参数是阵列时将被忽略。
$checked
null
是否选取(如果是布林)或符合 $value (如果是字串), 当第一个参数是阵列时将被忽略。
$attributes
array()
这些将被用作 HTML 标籤特性。
回传字串
範例
echo Form::label('Male', 'gender');
echo Form::checkbox('gender', 'Male', true);
echo Form::label('Female', 'gender');
echo Form::checkbox('gender', 'Female');

file($field, $attributes = array())

这是一个 Form::input() 的别名,它会自动设定 type 属性为 'file'

reset($field, $value = null, $attributes = array())

这是一个 Form::input() 的别名,它会自动设定 type 属性为 'reset'

submit($field, $value = null, $attributes = array())

这是一个 Form::input() 的别名,它会自动设定 type 属性为 'submit'

textarea($field, $value = null, $attributes = array())

建立一个 html textarea 元素,它可以设定使用的栏位名称、值和标籤的属性, 或合为一个阵列做为第一个参数。

静态
参数
参数预设描述
$field必要栏位名称的字串或标籤属性的阵列。
$value
null
栏位值,当第一个参数是阵列时将被忽略。
$attributes
array()
这些将被用作 HTML 标籤特性。
回传字串
範例
echo Form::textarea('description', 'enter here', array('rows' => 6, 'cols' => 8));
// 更多可以添加

select($field, $values = null, $options = array(), $attributes = array())

建立一个 html select 元素,它可以设定使用的栏位名称、已选择的值、选项和标籤的属性, 或合为一个阵列做为第一个参数。

静态
参数
参数预设描述
$field必要栏位名称的字串或标籤属性的阵列。
$values
null
选择的值或多选值的阵列, 当第一个参数是阵列时将被忽略。
$options
array()
value=>label 配对的关联阵列,也可能包含 option 群组如 opt_name=>array(),该阵列包含自己的一组 value=>label 配对。
$attributes
array()
这些将被用作 HTML 标籤特性。
回传字串
範例
echo Form::select('country', 'none', array(
	'none' => 'None',
	'europe' => array(
		'uk' => 'United Kingdom',
		'nl' => 'Netherlands'
	),
	'us' => 'United States'
));
// 更多可以添加

label($label, $id = null, $attributes = array())

建立一个 html label 元素,它可以设定使用的标籤、连结的 id 和标籤的属性, 或合为一个阵列做为第一个参数。

静态
参数
参数预设描述
$label必要标籤的字串或标籤属性的阵列。
$id
null
此标籤属于的栏位 id。
$attributes
array()
这些将被用作 HTML 标籤特性。
回传字串
範例
echo Form::label('Username', 'username');
// 更多可以添加

fieldset_open($attributes = array(), $legend = null)

建立一个栏位集开始标籤。

静态
参数
参数预设描述
$attributes
array()
一个设定的阵列;可能使用 'legend' 键去设定栏位集的 legend 属性。 属性的值将被用作 HTML 标籤特性。
$legend
字串
要用作 legend 栏位集选项的字串
回传字串
範例
// 回传 <fieldset >
echo Form::fieldset_open();

// 回传 <fieldset class="example-class">
echo Form::fieldset_open(array('class' => 'example-class', 'id' => 'example-id'));

// 回传 <fieldset class="example-class"><legend>Custom Legend</legend>
echo Form::fieldset_open(array('class' => 'example-class', 'id' => 'example-id'), 'Custom Legend');

// 回传 <fieldset class="example-class"><legend>Custom Legend</legend>
echo Form::fieldset_open(array('class' => 'example-class', 'id' => 'example-id', 'legend' => 'Custom Legend'));

fieldset_close()

建立一个栏位集结束标籤。

静态
参数(无)
回传字串
範例
// 回传 </fieldset>
echo Form::fieldset_close();

以 OOP 方式使用栏位集建立表单

详见 Fieldset