• yii downlist


    dropDownList:

    Yii中可以采用CHtml类来实现,也可以用CActiveForm来实现。
    一、用CHtml来实现。
    VIEW中实现:

     
    <?php
    echo CHtml::dropDownList('country_id','', array(1=>'USA',7=>'France',3=>'Japan'),
    array(
    'ajax' => array(
    'type'=>'POST', //request type
    'url'=>Yii::app()->createUrl('project/dynamiccities'),
    'update'=>'#city_id', 
    'data'=>array(Yii::app()->request->csrfTokenName=>Yii::app()->request->getCsrfToken(),'country_id'=>'js $("#country_id").val()')
    )));
    
    echo CHtml::dropDownList('city_id','', array());
    
    ?>
     

    controller中实现:

     
    public function actionDynamiccities()
    {
      $data=Parts::model()->findAll('prent_id=:prent_id',array(':prent_id'=>(int) $_POST['country_id']));
    
      $data=CHtml::listData($data,'id','name');
      foreach($data as $value=>$name)
      {
        echo CHtml::tag('option',
        array('value'=>$value),CHtml::encode($name),true);
      }
    }
     

    二、用CActiveForm来实现
    在VIEW中实现:

     
    <?php echo $form->dropDownList($model,'province_id',$provinceList(这个值可以通过render传递到页面),array(
      'empty'=>'-请选择-',
      'ajax'=>array(
      //指定请求地址
      'url'=>Yii::app()->createUrl('site/dynamicCity'),
      //请求数据
      'data'=>array('pid'=>'js:this.value'),
      //操作元素
      'update'=>'#SosInfo_city_id',(注意这个update的值很容易弄错,它由两部分组成:模型+ID,模型->是指本CActiveForm所承载的model名称)
      ),
    )); ?>
     
    <?php 
        echo $form->dropDownList($model,'city_id',City::model()->getCityList($model->province_id),array('empty'=>'-请选择-')); 
    ?>
  • 相关阅读:
    [刷题] PTA 7-32 说反话-加强版
    [算法] 堆
    [笔记] 《c++ primer》显示器程序 Chapter7
    [笔记] 《c++ primer》书店程序 Chapter7
    [c++] <vector>
    [笔记] 《c++ primer》书店程序 Chapter2
    [笔记] 《c++ primer》书店程序 Chapter 1
    253. Meeting Rooms II
    461. Hamming Distance
    252. Meeting Rooms
  • 原文地址:https://www.cnblogs.com/tongfu/p/6705401.html
Copyright © 2020-2023  润新知