Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php codeigniter中的国家概念_Php_Codeigniter - Fatal编程技术网

Php codeigniter中的国家概念

Php codeigniter中的国家概念,php,codeigniter,Php,Codeigniter,这是我的查看页面 <select name="category" value="c_id" onChange="getsubcategorydetails(this.value)" style="display:"> <option value="" selected="selected" >Select Categories</option>

这是我的查看页面

 <select name="category" value="c_id" onChange="getsubcategorydetails(this.value)" style="display:">
                                                   <option value="" selected="selected" >Select Categories</option>
            <?php if(isset($categories)) : foreach($categories as $row) :?>
                <option value=<?php echo $row->c_id; ?>><?php echo $row->c_name; ?></option>
                <?php endforeach;?>
                <?php else :
                endif;
                ?>
          </select>
                 </div>
               </div>
                 </div>
                </div>
                                <div class="row">
                                   <div class="input-field col s12">
                                   <tr>

                                            <td>     




    <select name=" select id="subcategory">
 <option value="" selected="selected" >Select Sub Category</option>
 <?php foreach($sub_categories as $stt): ?>
  <option value="<?php echo $stt->s_c_id; ?>"><?php echo $stt->s_c_name; ?></option>
 <?php endforeach; ?> 
 </select> 
                                                </select></td>
                                                </tr>
这是我的模型

    function getsubcategorydetails($c_id='')
 {
    $this -> db -> select('*');
    $this -> db -> where('c_id', $c_id);
    $query = $this -> db -> get('subcategories');
    return $query->result();
 }

当我单击类别选择框时,从控制器返回的值。。。但它没有显示在视图中。。。这有什么不对。。。。提前感谢

更好的选择是使用AJAX获取数据,并在更改事件时将其附加到依赖选择框。

在我的代码中

iam在onchange事件中通过ajax发布categoryid 以及从控制器中获取categoryid的子类别 并使用子类别在控制器中创建选择框 并将选择框置于子类别id中。 试试这个方法

查看文件

<select name="category" onChange="getsubcategorydetails(this.value)" >
 <option value=""  >Select Categories</option>
            <?php if(isset($categories)) : foreach($categories as $row) :?>
                <option value=<?php echo $row->c_id; ?>><?php echo $row->c_name; ?></option>
                <?php endforeach;?>
                <?php else :
                endif;
                ?>
</select>

<select name="subcategory" id="subcategory">
    <option value="" >Select Sub Category</option>
</select> 
剧本

function getsubcategorydetails(c_id)
{
    $.ajax({
        type: 'POST',
        url: "<?php echo base_url(); ?>yourcontroller/yourfunction",
        data: {c_id:c_id},
        success: function(data) { 
            $('#subcategory').html(data);
        }
    });
}

我建议您使用jQueryAjax获取子类别的详细信息。 目前,您采用了错误的编码方法,例如在带有GetSubcategory Details$c_id的OnChange事件上调用codeigniter控制器函数,这是不正确的,并使其成为错误的做法。OnChange事件仅用于调用Javascript函数

要操作DOM,请对其使用Javascript/JQuery。将控制器用作将适当的格式化数据获取到JQuery中的中继

public function getsubcategorydetails($c_id)
    {

       $c_id = $this->input->post('c_id');

       $sub_categories = $this->m_category->getsubcategorydetails($c_id);

       $subcategory='<option value="" >Select Sub Category</option>';

       foreach($sub_categories as $stt)
       {

       $subcategory.='<option value="'.$stt->s_c_id.'">'.$stt->s_c_name.'</option>';

       }

       echo $subcategory;
    }
function getsubcategorydetails($c_id='')
 {
    $this -> db -> select('*');
    $this -> db -> where('c_id', $c_id);
    $query = $this -> db -> get('subcategories');
    return $query->result();
 }
function getsubcategorydetails(c_id)
{
    $.ajax({
        type: 'POST',
        url: "<?php echo base_url(); ?>yourcontroller/yourfunction",
        data: {c_id:c_id},
        success: function(data) { 
            $('#subcategory').html(data);
        }
    });
}