繁体   English   中英

在 yii1 上选择下拉列表问题更新时间

[英]Select dropdownlist issue update time on yii1

我已经动态创建了 dropDownList 框。

第一个保管箱是类别,第二个保管箱是子类别。 子类别下类别。

创建时间没有问题但仍然选择编辑时间类别但未选择子类别。

所有数据都放在一个表中。 将 level 和 parent_id 数据添加到 manaj 类别。

===> 我的表数据 | category_id | parent_id | 水平 | 分类名称
| 26 | 0 | 0 | 床垫
| 27 | 0 | 0 | 记忆泡沫床垫
| 28 | 0 | 0 | 凉床
| 103 | 26 | 1 | 价值线
| 104 | 26 | 1 | 公司
| 105 | 26 | 1 | 枕套
| 106 | 26 | 1 | 独立缠绕线圈

========>下拉类别和子类别

    <?php 
    $arr =  array();
     foreach($this->furniture_id as $furniture)
    {
     $id=$furniture['category_id'];
     $parent_id=$furniture['parent_id'];
      $cat_name=$furniture['category_name'];
      if($parent_id==0)
      {
    $arr[$id]=$cat_name;
      }
    } 
    echo $form->labelEx($model,'category_id');
    ?>

    <?php echo $form->dropDownList($model,'category_id', $arr ,
    array('empty'=>'Please Select Category','onchange'=>'js:validate_dropdown(this.value)')); ?>
    <?php echo $form->error($model,'category_id'); ?>
    <?php echo $images_path = realpath(Yii::app()->basePath . '/sdmattsFurniture/get_category.php'); ?>
</div></div>

 <div class="control-group" >
<div class="row">
    <?php 
    echo $form->labelEx($model,'sub_category_id'); ?>
    <?php 
    if($this->furniture_id != '')
    {
    $arr_val_sub = array();
    foreach($this->furniture_id as $furniture_sub)
    {
     $id_sub=$furniture_sub['category_id'];
     $parent_id_sub=$furniture_sub['parent_id'];
     $level=$furniture_sub['level'];
      $cat_name_sub=$furniture_sub['category_name'];
      if($parent_id_sub > 0 && $level == 0)
      {
    $arr_val_sub[$id_sub]=$cat_name_sub;
      }

    } 
    echo "<div id='sub_cat'>";
     echo $form->dropDownList($model,'sub_category_id', $arr_val_sub,
        array('empty'=>'Please Select Category','onchange'=>'js:validate_sub_dropdown(this.value)'));
    echo "</div>";?>
    <?php echo $form->error($model,'sub_category_id'); ?>
 <?php    } ?>
</div>
</div>

======> onchange 调用函数

函数validate_dropdown(id){

    id=document.getElementById('SdmattsFurniture_category_id').value;
    var sub_category_id=document.getElementById('SdmattsFurniture_sub_category_id').value;
    if(id!='Please Select Category')
    {
    xmlhttpp_div_category=GetXmlHttpObject();
    if (xmlhttpp_div_category==null)
    {
      alert ("Browser does not support HTTP Request");
      return;
    }
    var url="<?php echo Yii::app()->request->baseUrl?>/get_category.php?id="+id+"&sub_category_id="+sub_category_id;
    xmlhttpp_div_category.onreadystatechange=musicChanged_div_category;
    xmlhttpp_div_category.open("GET",url,true);
    xmlhttpp_div_category.send(null);
    }
}

谢谢

在依赖下拉列表的情况下,即 dorpdonw B 完全依赖于下拉列表 A,这意味着最初下拉列表 B 将是空的,当我们在下拉列表 A 中选择值时,B 将相应地填充。如果您的代码在添加过程中工作正常,那么我建议您当您像这样加载窗口时调用您的函数

 window.load = function(){
     id = id=document.getElementById('SdmattsFurniture_category_id').value;
     ////call your function which populate the dropdown B////
     validate_dropdown(id);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM