前言
本文主要介紹的是關(guān)于yii 2.0中表單小部件使用的相關(guān)內(nèi)容,分享出來供大家參考學(xué)習(xí),下面來看看詳細(xì)的介紹:
使用方法
首先創(chuàng)建model層,因為要使用表單小部件 所以要加載相應(yīng)的組件,這里需要的組件有yii\widgets\ActiveForm yii\helpers\Html
接下來在model定義的class里 寫方法,首先我們要定義需要使用表單小部件的name值
不多說上代碼
<?php /** * Created by PhpStorm. * User: jinlei * Date: 2017/5/10 * Time: 9:35 */ namespace frontend\models; use yii\base\Model; use yii\widgets\ActiveForm; use yii\helpers\Html; class Form extends Model { public $name; public $pwd; public $sex; public $hobby; public $age; public function rules(){ return[ ]; } public function attributeLabels(){ return[ ‘name'=>'用戶名', ‘pwd'=>'密碼', ‘sex'=>'性別', ‘hobby'=>'愛好', ‘a(chǎn)ge'=>'年齡' ]; } static public function dataarr($data){ $arr = array(); foreach($data as $key=>$value){ $arr[$value[‘kid']] = $value[‘kname']; } return $arr; } }
在這個model里 有將英文表頭轉(zhuǎn)換中文的方法 attributuLabels
還有 我們處理單選多選還有下拉框值得方式 dataarr
接下來 我 們需要創(chuàng)建controller
<?php /** * Created by PhpStorm. * User: jinlei * Date: 2017/5/10 * Time: 9:39 */ namespace frontend\controllers; use yii\web\Controller; use yii; use db; use frontend\models\Form; class LoginController extends Controller { public function actionIndex(){ $sql = ‘select kid,kname from exam_tiku'; $data = yii::$app->db->createCommand($sql)->queryAll(); $arr = Form::dataarr($data); //var_dump($arr);die; $model = new Form(); return $this->render(‘index',[‘model'=>$model,'data'=>$arr]); } public function actionAdd(){ $data = Yii::$app->request->post(); echo $name = $data[‘Form'][‘name']; } }
然后就是在我門的view層 展示出來
<?php /** * Created by PhpStorm. * User: jinlei * Date: 2017/5/10 * Time: 9:41 */ use yii\helpers\Html; use yii\widgets\ActiveForm; $form = ActiveForm::begin([ ‘id' => ‘login-form', ‘options' => [‘class' => ‘form-horizontal'], ‘a(chǎn)ction'=>'?r=login/add', ‘method'=>'post', ]) ?> <?= $form->field($model, ‘name') ?> <?= $form->field($model, ‘pwd')->passwordInput() ?> <?= $form->field($model, ‘sex')->radioList([‘0'=>'男','1'=>'女']) ?> <?= $form->field($model, ‘hobby')->checkboxList([‘basketball'=>'籃球','baseball'=>'棒球','swim'=>'游泳']) ?> <?= $form->field($model, ‘a(chǎn)ge')->dropDownList($data) ?> <div class=”form-group”> <div class=”col-lg-offset-1 col-lg-11″> <?= Html::submitButton(‘Login', [‘class' => ‘btn btn-primary']) ?> </div> </div> <?php ActiveForm::end() ?>
在這個頁面中 我們展示了 文本框 密碼框 單選多選下拉框 其中下拉框的數(shù)據(jù)是從db中讀取的
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對的支持。
【網(wǎng)站聲明】本站除付費源碼經(jīng)過測試外,其他素材未做測試,不保證完整性,網(wǎng)站上部分源碼僅限學(xué)習(xí)交流,請勿用于商業(yè)用途。如損害你的權(quán)益請聯(lián)系客服QQ:2655101040 給予處理,謝謝支持。