文档章节

Yii2.0 ActiveForm Input Fields

卖小女孩的小火柴
 卖小女孩的小火柴
发布于 2015/06/02 22:10
字数 886
阅读 1190
收藏 4

之前5月学习Yii2的时候发现的一个不错的博客内容,这里转载保存。

  1. Use the namespace For ActiveForm
  2. Active Form Begin And End
  3. Text Input Field
  4. TextArea Field
  5. Password Input Field
  6. HTML5 Email Input Field
  7. File Upload
  8. Checkbox Button Field
  9. Checkbox List Input Field
  10. Radio Button Field
  11. Radio Button List Field
  12. ListBox Field
  13. dropDown List Input Field
  14. Submit Button

‘yii\widgets\ActiveForm’ class is used to create a form and ‘yii\helpers\Html’ class is used to display the different type of HTML input fields like buttons, textbox, select box etc.

ActiveForm::begin() - creates a form instance and  beginning of the form.
ActiveForm::begin() and ActiveForm::end() - All of the content placed between this.

Use the namespace For ActiveForm

1 <?php
2 use yii\helpers\Html;
3 use yii\widgets\ActiveForm;
4 ?>

‘ActiveForm’ namespace is very important to create the a active form and ‘Html’ namespace is very useful to display the different html input fields.

Active Form Begin And End

01 <?php
02 use yii\helpers\Html;
03 use yii\widgets\ActiveForm;
04  
05 //$form = ActiveForm::begin(); //Default Active Form begin
06 $form = ActiveForm::begin([
07     'id' => 'active-form',
08     'options' => [
09                 'class' => 'form-horizontal',
10                 'enctype' => 'multipart/form-data'
11                 ],
12 ])
13 /* ADD FORM FIELDS */
14 ActiveForm::end();
15 ?>

Here we added active form with basic details like form id, class and enctype for file uploads.

Text Input Field

1 //Format 1
2 <?= $form->field($model,'name'); ?>
3 //Format 2
4 <?= $form->field($model, 'name')->textInput()->hint('Please enter your name')->label('Name') ?>

Format 1 is a normal text input field. Format 2 is a text input field with hint, label.

TextArea Field

The model attribute value will be used as the content in the textarea.

1 <?= $form->field($model, 'desc')->textarea(); ?>
2 <?= $form->field($model, 'desc')->textarea()->label('Description'); ?>
3 <?= $form->field($model, 'desc')->textarea(array('rows'=>2,'cols'=>5)); ?>

Password Input Field

1 //Format 1
2 <?= $form->field($model, 'password')->input('password') ?>
3 //Format 2
4 <?= $form->field($model, 'password')->passwordInput() ?>
5 //Format 3
6 <?= $form->field($model, 'password')->passwordInput()->hint('Password should be within A-Za-z0-9')->label('Password Hint') ?>

We added different type of password input field like password with hint, custom lable.

HTML5 Email Input Field

1 <?= $form->field($model, 'email')->input('email') ?>

File Upload

fileInput() function is used to create a file input fields and ‘multiple’ parameter is used to upload multiple file in single upload.

Single File Upload

1 <?= $form->field($model, 'uploadFile')->fileInput() ?>

MultiFile Upload

1 <?php echo $form->field($model, 'uploadFile[]')->fileInput(['multiple'=>'multiple']); ?>

Checkbox Button Field

Using below we can create the Checkbox base on model attribute of yii2.0 framework. We added the following options like custom label, disabled, style etc

01 <!-- CHECKBOX BUTTON DEFAULT LABEL -->
02 <?= $form->field($model, 'population')->checkbox(); ?>
03 <!-- CHECKBOX BUTTON WITHOUT LABEL -->
04 <?= $form->field($model, 'population')->checkbox(array('label'=>'')); ?>
05 <!-- CHECKBOX BUTTON WITH CUSTOM LABEL -->
06 <?= $form->field($model, 'population')    ->checkbox(array('label'=>''))
07                                         ->label('Gender'); ?>
08 <!-- CHECKBOX BUTTON WITH LABEL OPTIONS, DISABLED AND STYLE PROPERTIES -->
09 <?= $form->field($model, 'population')->checkbox(array(
10                                 'label'=>'',
11                                 'labelOptions'=>array('style'=>'padding:5px;'),
12                                 'disabled'=>true                            
13                                 ))
14                                 ->label('Gender'); ?>

Checkbox List Input Field

checkboxList() function is used to display the check box list using array of input argument values.

1 <?php echo $form->field($model, 'name[]')->checkboxList(['a' => 'Item A', 'b' => 'Item B', 'c' =>'Item C']); ?>

Radio Button Field

The model attribute value will be used to create the redio button.

01 <!-- RADIO BUTTON DEFAULT LABEL -->
02 <?= $form->field($model, 'gender')->radio(); ?>
03 <!-- RADIO BUTTON WITHOUT LABEL -->
04 <?= $form->field($model, 'gender')->radio(array('label'=>'')); ?>
05 <!-- RADIO BUTTON WITH CUSTOM LABEL -->
06 <?= $form->field($model, 'gender')    ->radio(array('label'=>''))
07                                         ->label('Gender'); ?>
08 <!-- RADIO BUTTON WITH LABEL OPTIONS -->
09 <?= $form->field($model, 'gender')->radio(array(
10                                 'label'=>'',
11                                 'labelOptions'=>array('style'=>'padding:5px;')))
12                                 ->label('Gender'); ?>

Radio Button List Field

The model attribute value will be used to create the redio button list.

1 <?= $form->field($model, 'population')->radioList(array('1'=>'One',2=>'Two')); ?>

ListBox Field

Using below we can create the list box base on model attribute of yii2.0 framework. We added the following options like prompt, size, disabled, style etc

01 <!-- Listbox with prompt text -->
02 <?= $form->field($model, 'population')-> listBox(
03             array('1'=>'1',2=>'2',3=>3,4=>4,5=>5),
04             array('prompt'=>'Select')
05             ); ?>
06 <!-- Listbox with size -->
07 <?= $form->field($model, 'population')-> listBox(
08             array('1'=>'1',2=>'2',3=>3,4=>4,5=>5),
09             array('prompt'=>'Select','size'=>3)
10             ); ?>
11 <!-- Listbox with disabled, style properties -->
12 <?= $form->field($model, 'population')-> listBox(
13             array('1'=>'1',2=>'2',3=>3,4=>4,5=>5),
14             array('disabled' => true,'style'=>'background:gray;color:#fff;'))
15             ->label('Gender'); ?>

dropDown List Input Field

dropDownList() function is used to create HTML ‘select’ tag input field.

1 //Format 1
2 <?php echo $form->field($model, 'name')->dropDownList(['a' => 'Item A', 'b' => 'Item B', 'c' => 'Item C']); ?>
3 // Format 2
4 < echo $form->field($model, 'name')->dropDownList($listData, ['prompt'=>'Choose...']);>

Submit Button

1 <?= Html::submitButton('Submit', ['class'=> 'btn btn-primary']) ;?>

本文转载自:http://www.bsourcecode.com/yiiframework2/yii2-0-activeform-input-fields

卖小女孩的小火柴
粉丝 46
博文 68
码字总数 28535
作品 1
成都
项目经理
私信 提问
YII 2.0 Bad Request (#400)

post提交表单的时候出现在这个错误是因为Yii2.0默认开启了_crsf的验证 可以在控制器里局部禁用public $enableCsrfValidation = false ->覆盖父类的属性 也可以在配置文件中全局禁用 'compone...

xtceetg
2016/08/27
0
0
Yii2.0踩坑记(持续更新)

ActiveForm表单提交后,通过网页中Network可知表单数据已经向控制器提交。但是,控制器中却接受不到数据。 我遇到这个问题的原因是:在表单模型的类文件中没有给表单的属性设置规则,就是没有...

偏偏注定要落脚丶
2018/07/24
0
0
yii2 form表单

1、命名空间引用 use yiihelpersHtml; use yiiwidgetsActiveForm; 2、form表单的开始和结束 <?php $form = ActiveForm::begin([ 'action' =>'./admin.php?c=goods&a=add', 'method' => 'pos......

colin_86
2015/10/23
17
0
yii2 modal弹窗之ActiveForm ajax表单异步验证

作者:白狼 出处:http://www.manks.top/yii2modalactiveform_ajax.html 本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责...

白狼栈
2016/06/19
157
0
如何去除(提请首信易支付时)金额中的逗号

高手求救啊!如何将下网页截图中提交支付金额50,000.00 中的逗号去除,否则首信易支付不支持逗号啊(总是支付报错,我想哭了)!此页面代码已附在图下面第一篇代码(总共附了三个文件的代码)...

rewrty
2018/05/03
329
0

没有更多内容

加载失败,请刷新页面

加载更多

Kafka 原理和实战

本文首发于 vivo互联网技术 微信公众号 https://mp.weixin.qq.com/s/bV8AhqAjQp4a_iXRfobkCQ 作者简介:郑志彬,毕业于华南理工大学计算机科学与技术(双语班)。先后从事过电子商务、开放平...

vivo互联网技术
33分钟前
11
0
java数据类型

基本类型: 整型:Byte,short,int,long 浮点型:float,double 字符型:char 布尔型:boolean 引用类型: 类类型: 接口类型: 数组类型: Byte 1字节 八位 -128 -------- 127 short 2字节...

audience_1
今天
7
0
太全了|万字详解Docker架构原理、功能及使用

一、简介 1、了解Docker的前生LXC LXC为Linux Container的简写。可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚拟化的其他复杂性。相当于C++中的NameSpa...

Java技术剑
今天
19
0
Wifiphisher —— 非常非常非常流氓的 WIFI 网络钓鱼框架

编者注:这是一个非常流氓的 WIFI 网络钓鱼工具,甚至可能是非法的工具(取决于你的使用场景)。在没有事先获得许可的情况下使用 Wifiphisher 攻击基础网络设施将被视为非法活动。使用时请遵...

红薯
今天
72
1
MongoDB 4 on CentOS 7安装指南

本教程为CentOS x86_64 7.x操作系统下,MongoDB Community x86_64 4.2(GA)安装指南。 安装方式一:yum repo在线安装 [此方式较为简单,官方推荐] Step1:新建MongDB社区版Yum镜像源。 # vim ...

王焱君
今天
11
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部