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 相关文章推荐
url decode problem 解决方法
Dec 26 PHP
php生成随机字符串可指定纯数字、纯字母或者混合的
Apr 18 PHP
PHP获取服务器端信息的方法
Nov 28 PHP
php中curl使用指南
Feb 05 PHP
PHP.ini安全配置检测工具pcc简单介绍
Jul 02 PHP
php递归函数三种实现方法及如何实现数字累加
Aug 07 PHP
PHP5.3新特性小结
Feb 14 PHP
PHP策略模式定义与用法示例
Jul 27 PHP
PHP反射实际应用示例
Apr 03 PHP
基于ThinkPHP5框架使用QueryList爬取并存入mysql数据库操作示例
May 25 PHP
php中文语义分析实现方法示例
Sep 28 PHP
php 解析非标准json、非规范json
Apr 01 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
Discuz! 5.0.0论坛程序中加入一段js代码,让会员点击下载附件前自动弹出提示窗口
2007/04/18 PHP
让PHP开发者事半功倍的十大技巧小结
2010/04/20 PHP
深入探讨<br />和 \r\n两者有什么区别??
2013/06/05 PHP
php操作xml
2013/10/27 PHP
php中chdir()函数用法实例
2014/11/13 PHP
Yii2实现同时搜索多个字段的方法
2016/08/10 PHP
Javascript中的数学函数
2007/04/04 Javascript
js 关于=+与+=日期函数使用说明(赋值运算符)
2011/11/15 Javascript
JS getAttribute和setAttribute(取得和设置属性)的使用介绍
2013/07/10 Javascript
45个JavaScript编程注意事项、技巧大全
2015/02/11 Javascript
jquery+CSS实现的多级竖向展开树形TRee菜单效果
2015/08/24 Javascript
五种js判断是否为整数类型方式
2015/12/03 Javascript
第三篇Bootstrap网格基础
2016/06/21 Javascript
JavaScript给每一个li节点绑定点击事件的实现方法
2016/12/01 Javascript
Node.js的Mongodb使用实例
2016/12/30 Javascript
深入理解Webpack 中路径的配置
2017/06/17 Javascript
Angular.js组件之input mask对input输入进行格式化详解
2017/07/10 Javascript
vue2.0之多页面的开发的示例
2018/01/30 Javascript
ajax前台后台跨域请求处理方式
2018/02/08 Javascript
vue项目打包后打开页面空白解决办法
2018/06/29 Javascript
浅谈webpack+react多页面开发终极架构
2018/11/11 Javascript
微信小程序实现搜索功能并跳转搜索结果页面
2019/05/18 Javascript
使用Python脚本生成随机IP的简单方法
2015/07/30 Python
Python科学计算之Pandas详解
2017/01/15 Python
对Tensorflow中的变量初始化函数详解
2018/07/27 Python
python实现在一个画布上画多个子图
2020/01/19 Python
Python基础类继承重写实现原理解析
2020/04/03 Python
详解KMP算法以及python如何实现
2020/09/18 Python
HTML5之SVG 2D入门3—文本与图像及渲染文本介绍
2013/01/30 HTML / CSS
Philosophy美国官网:美国美容品牌
2016/08/15 全球购物
英国第一豪华护肤品牌:Elemis
2017/10/12 全球购物
丧事答谢词
2015/01/05 职场文书
写给纪委的违纪检讨书
2015/05/05 职场文书
公司庆典主持词
2015/07/04 职场文书
入党申请书格式
2019/06/20 职场文书
xhunter1.sys可以删除嘛? win11提示xhunter1.sys驱动不兼容解决办法
2022/09/23 数码科技