要想使用表單小部件 必須使用model
在使用model時 需要載入表單小部件的元件
分別是 yii\widgets\activeform 和 yii\helpers\html;
然後在我們的model類中 定於各個表單小部件的name值
定義規則
<?php
namespace frontend\models;
use yii\base\model;
use yii\widgets\activeform;
use yii\helpers\html;
class form extends model
public function attributelabels()
public function getage($start,$end)
return $arr;
}public function arrtodata($data)
return $arr;
}//array('kid'=>'kname')
}
在這個model裡 多了三個方法 分別 是 將表頭的英文變為漢字 attributelabels
處理年齡需要的資料 getage
處理 資料庫二維陣列 變為我們需要的一維陣列 當然 我們處理的比較死 你可以將需要的key 值自己處理處理成活的
接下來 是控制器層
我們需要將model和我們的控制器進行關聯
<?php
namespace frontend\controllers;
use yii\web\controller;
use frontend\models\form;
use yii;
use db;
class formcontroller extends controller
public function actionadd()
}
最後是展示頁面的views層
<?php
use yii\widgets\activeform;
use yii\helpers\html;
$form = activeform::begin([
'id' => 'login-form',
'options' => ['class' => 'form-horizontal'],
'action'=>'?r=form/add',
'method'=>'post',
]) ?>
<?php $model->***=1 ?> //預設選中單選按鈕
<?= $form->field($model, 'name')->textinput() ?>
<?= $form->field($model, 'pwd')->passwordinput() ?>
<?= $form->field($model, '***')->radiolist([0=>'男',1=>'女']) ?>
<?= $form->field($model, 'hobby')->checkboxlist($data) ?>
<?= $form->field($model, 'age')->dropdownlist($age) ?>
<?= $form->field($model, 'intruction')->textarea(['rows'=>3]) ?>
<?= html::submitbutton('提交', ['class' => 'btn btn-primary']) ?>
<?php activeform::end() ?>
在這裡我們使用的 文字框 下拉框 密碼框 核取方塊 等等
更多請參考
yii框架中不是呀表單小部件必須要在表單頁加一行
不然提交不過去
或者是禁止驗證 加一行
public $enablecsrfvalidation = false;
Yii表單小部件
文字框 textinput 密碼框 passwordinput 單選框 radio radiolist 核取方塊 checkbox checkboxlist 下拉框 dropdownlist 隱藏域 hiddeninput 文字域 textarea rows 3 檔案上傳 fileinput 提交按...
Yii框架中表單小部件
文字框 textinput 密碼框 passwordinput 單選框 radio radiolist 核取方塊 checkbox checkboxlist 下拉框 dropdownlist 隱藏域 hiddeninput 文字域 textarea rows 3 檔案上傳 fileinput 提交按...
yii高階框架 表單小部件驗證
控制器 model 檢視層 控制器model層 namespace frontend models use yii base model class b extends model message 郵箱格式不正確 手機號 phone match pattern 1 0 9 message 手機號格式...