eftec / formone
在PHP上创建HTML表单
1.8
2020-01-13 19:39 UTC
Requires
- php: >=5.6
- ext-ctype: *
- eftec/validationone: ^1.13
README
在PHP上创建HTML表单
而不是编写此代码
<form method='POST' enctype='multipart/form-data' > <label for='field1'>field 1:</label> <input type='text' name='field1' id='field1'value='' /> <br> </form>
使用此代码代替
<?php $f=new \eftec\FormOne(); echo $f->start(); echo $f->id('field1') ->label('field 1:') ->type('label') ->render(); echo $f->id('field1') ->type('text') ->render(); echo $f->renderRaw('<br>'); echo $f->end();
- FormOne
- render()
- start()
- end()
- idForm($idForm)
- prefix($prefix)
- name($name)
- id($id)
- disabled($disabled=true)
- type($type)
- addClass($classes)
- value($value)
- itemValue($value)
- label($label)
- addItem($idOrArray,$text=null,$extra=null)
- addItems($items)
- addExtra($type,$value=null)
- addAttr($type,$value=null)
- onClick($js)
- onChange($js)
- addJScript($type,$js)
- bind($bind)
- inner($htmlInner)
- readonly($readonly=true)
- required($required=true)
- 示例
- 版本
- 许可协议
render()
这是链的末端。它生成最终结果(HTML)
start()
开始表单(
)end()
结束表单(
)idForm($idForm)
设置当前表单的标识符。
prefix($prefix)
标记由名称字段使用的名称前缀。例如 "frm_"
name($name)
设置当前链的名称。
注意:如果在链的末端未设置id(),则它也会设置 id
id($id)
它设置当前链的id。
注意:如果在链的末端未设置name(),则它也会设置 name
disabled($disabled=true)
它设置链的禁用属性
type($type)
addClass($classes)
它向当前元素添加一个类。您可以使用不同的调用添加多个类。例如
$form ->addClass("col-sm-2 col-form-label")
$form ->addClass("col-sm-2") ->addClass("col-form-label")
classType($type,$classes)
它向同一类型的所有元素添加一个类
$f->classType('label','col-sm-2 col-form-label'); // for all labels $f->classType('text','col-sm-10 form-control'); // for all textbox $f->classType('select','col-sm-10 form-control'); // for all select
value($value)
它设置当前值,例如文本框的默认值
itemValue($value)
它设置元素的值。它与value不同,因为它用于值是"checked"时
label($label)
它设置元素的标签。
它用于标签、复选框、单选按钮和按钮(内联HTML)
addItem($idOrArray,$text=null,$extra=null)
它向列表添加一个简单项目。通常用于type="select"时
$form->addItem('','--select a field--')
$form->addItem(['id'=>'','text'=>'--select a field--'])
addItems($items)
它向列表添加多个项目。
$array=[ ['id'=>1,'text'=>'America'], ['id'=>2,'text'=>'Asia'], ['id'=>3,'text'=>'Europa'], ]; $form->addItem($array)
addExtra($type,$value=null)
addAttr($type,$value=null)
onClick($js)
onChange($js)
addJScript($type,$js)
bind($bind)
inner($htmlInner)
readonly($readonly=true)
required($required=true)
示例
$form->type('label') ->id('id') ->addClass("col-sm-2 col-form-label") ->inner('Id 1:') ->render()
它渲染
<label for='id' class="col-sm-2 col-form-label">Id 1:</label>
版本
- 1.8 2020-01-13 一些小的更新
- 1.7 2018-20-29 一点小的优化。现在如果类为空,则不渲染class=''
- 1.6 2018-20-28 添加了"隐藏"类型。
- 1.5 2018-20-27 一些清理和classType()
- 1.4 2018-20-27 start()、end()、prefix()、idform()和"密码"类型。
- 1.2 2018-10-22 一些清理。
- 1.1 2018-10-22 新功能
- 1.0 2018-10-21 第一个版本
许可协议
版权所有:Jorge Castro Castillo Eftec 2018
本程序提供双重许可,LGPLV2或商业许可。