Yii2中DropDownList简单用法示例


Posted in PHP onJuly 18, 2016

本文实例讲述了Yii2中DropDownList简单用法。分享给大家供大家参考,具体如下:

这里以实际应用为例讲解Yii2 DropDownList用法。

有一张分类表,无限极分类那种,表结构如下,pid就是父分类ID
这里我们要实现:

新建分类的时候,父分类可以从所有分类中任选一个或者不选

编辑分类时,父分类不能选择当前编辑的分类。。。如果选自己,父分类就是自己了,必然出错!

实现代码如下,我就贴上form的全部代码吧

<?php
use common\models\Category;
use yii\helpers\ArrayHelper;
use yii\helpers\Html;
use yii\widgets\ActiveForm;
/* @var $this yii\web\View */
/* @var $model common\models\Category */
/* @var $form yii\widgets\ActiveForm */
?>
<div class="category-form">
  <div class="row">
    <?php
    if (!$model->isNewRecord) {//如果是编辑分类
      $cate = ArrayHelper::map(Category::find()->andWhere('id != :id', [':id' => $model->id])->all(), 'id', 'title');
    } else {//如果是新建分类
      $cate = ArrayHelper::map(Category::find()->all(), 'id', 'title');
    }
    ?>
    <div class="col-md-6 col-md-offset-3">
      <?php $form = ActiveForm::begin(); ?>
      <?= $form->field($model, 'title')->textInput(['maxlength' => 100])->label("分类标题") ?>
      <?= $form->field($model, 'name')->textInput(['maxlength' => 100])->label("分类别名") ?>
      <?= $form->field($model, 'pid')->dropDownList($cate, ['prompt' => '请选择父分类'])->label("父分类") ?>
      <?= $form->field($model, 'keywords')->textarea(['maxlength' => 255])->label("分类关键词") ?>
      <?= $form->field($model, 'description')->textarea(['maxlength' => 255])->label("分类描述") ?>
      <div class="form-group">
        <div class="row">
          <div class="col-md-6 col-md-offset-3">
            <?= Html::submitButton($model->isNewRecord ? '创建' : '更新', ['class' => $model->isNewRecord ? 'btn btn-block btn-success' : 'btn btn-block btn-primary']) ?>
          </div>
        </div>
      </div>
      <?php ActiveForm::end(); ?>
    </div>
  </div>
</div>

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
php学习之流程控制实现代码
Jun 09 PHP
php导入导出excel实例
Oct 25 PHP
从零开始学YII2框架(二)通过 Composer 安装扩展插件
Aug 20 PHP
PHP文件生成的图片无法使用CDN缓存的解决方法
Jun 20 PHP
Yii2组件之多图上传插件FileInput的详细使用教程
Jun 20 PHP
如何正确配置Nginx + PHP
Jul 15 PHP
php自定义函数实现汉字转换utf8编码的方法
Sep 29 PHP
ThinkPHP 3.2.2实现事务操作的方法
May 05 PHP
使用PHPExcel导出Excel表
Sep 08 PHP
phpMyAdmin通过密码漏洞留后门文件
Nov 20 PHP
PHP连接SQL Server的方法分析【基于thinkPHP5.1框架】
May 06 PHP
PHP pthreads v3使用中的一些坑和注意点分析
Feb 21 PHP
Yii2使用dropdownlist实现地区三级联动功能的方法
Jul 18 #PHP
Yii2框架dropDownList下拉菜单用法实例分析
Jul 18 #PHP
用HTML/JS/PHP方式实现页面延时跳转的简单实例
Jul 18 #PHP
浅谈PHP正则中的捕获组与非捕获组
Jul 18 #PHP
Yii2.0表关联查询实例分析
Jul 18 #PHP
php 实现301重定向跳转实例代码
Jul 18 #PHP
PHP的openssl加密扩展使用小结(推荐)
Jul 18 #PHP
You might like
PHP IN_ARRAY 函数使用注意事项
2010/07/24 PHP
浅析Dos下运行php.exe,出现没有找到php_mbstring.dll 错误的解决方法
2013/06/29 PHP
PHP错误Warning: Cannot modify header information - headers already sent by解决方法
2014/09/27 PHP
thinkPHP3.1验证码的简单实现方法
2016/04/22 PHP
php base64 编码与解码实例代码
2017/03/21 PHP
jQuery prev ~ siblings选择器使用介绍
2013/08/09 Javascript
javascript中直接引用Microsoft的COM生成Word
2014/01/20 Javascript
jquery遍历checkbox介绍
2014/02/21 Javascript
jQuery实现仿QQ空间装扮预览图片的鼠标提示效果代码
2015/10/30 Javascript
jQuery 操作input中radio的技巧
2016/07/18 Javascript
用jQuery实现优酷首页轮播图
2017/01/09 Javascript
Angular2使用Angular-CLI快速搭建工程(二)
2017/05/21 Javascript
JavaScript数据结构之单链表和循环链表
2017/11/28 Javascript
vue-router的hooks用法详解
2020/06/08 Javascript
[12:29]《一刀刀一天》之DOTA全时刻19:蝙蝠骑士田伯光再度不举
2014/06/10 DOTA
Windows下安装python2和python3多版本教程
2017/03/30 Python
python编程测试电脑开启最大线程数实例代码
2018/02/09 Python
python程序封装为win32服务的方法
2021/03/07 Python
利用Python实现原创工具的Logo与Help
2018/12/03 Python
Python sqlite3查询操作过程解析
2020/02/20 Python
python实现贪吃蛇双人大战
2020/04/18 Python
解决keras模型保存h5文件提示无此目录问题
2020/07/01 Python
python中sys模块是做什么用的
2020/08/16 Python
通俗讲解python 装饰器
2020/09/07 Python
python 利用zmail库发送邮件
2020/09/11 Python
Python Http请求json解析库用法解析
2020/11/28 Python
西班牙伏林航空公司:Vueling
2016/08/05 全球购物
美国二手奢侈品寄售网站:TheRealReal
2016/10/29 全球购物
世界上最大的专业美容用品零售商:Sally Beauty
2017/07/02 全球购物
运动鞋、足球鞋和慕尼黑球衣:Sport Münzinger
2019/08/26 全球购物
碧欧泉Biotherm加拿大官方网站:法国高端护肤品牌
2019/10/18 全球购物
甜点店创业计划书
2014/01/27 职场文书
志愿者活动总结范文
2014/04/26 职场文书
竞选班长演讲稿500字
2014/08/22 职场文书
2015年售票员工作总结
2015/04/29 职场文书
python tkinter实现定时关机
2021/04/21 Python