【问题标题】:How to read value in combobox when editing data with codeigniter使用 codeigniter 编辑数据时如何读取组合框中的值
【发布时间】:2017-11-13 13:47:52
【问题描述】:

我无法从表格中显示要编辑的数据。编辑数据类别、子类别和制造商时,组合框和表格不显示数据。我希望能够在编辑后查看表格中的数据。

控制器表单

public function data_items_edit($id)
    {

    $this->load->model('additem_m');
    $model3 = $this->additem_m;
    $data['table'] = $model3->get_where2($id)[0];
    //$data['table'] = $model3->get();
    $this->load->model('category_m');
    $model = $this->category_m;
    $data['category'] = $model->get();

    $this->load->model('subcategory_m');
    $model1 = $this->subcategory_m;
    $data['sub'] = $model1->get();

    $this->load->model('manufactures_m');
    $model2 = $this->manufactures_m;
    $data['manu'] = $model2->get();

    //print_r($data['table']);
    $this->load->view('items/edit_items_v', $data);
}

数据表控制器

public function index()
{
    if($this->session->has_userdata('isLogin')){
    $this->load->model('additem_m');
    $model = $this->additem_m;
    $data['table'] = $model->get('items.*, item_categories.name as ic, 
    item_categories_sub.name as ics, item_manufactures.name as im',
    [
        ['table'=>'item_categories','condition'=>'item_categories.id = 
        items.item_category_id'],
        ['table'=>'item_categories_sub','condition'=>'item_categories_sub.id 
         = items.item_category_sub_id'],
        ['table'=>'item_manufactures','condition'=>'item_manufactures.id = 
        items.item_manufacturer_id'],
        ]);
        //print_r($data['table']);
        $this->load->view('items/items_v', $data);
        }else{
        redirect('login');
    }
}

查看表单

<div class="form-group">
    <label class="col-sm-4 control-label form-label">Category :</label>
    <div class="col-sm-8">
        <select name="item_category_id" class="form-control" id="category">
            <option  value='' <?php if($category == '0'){ echo 'selected';} ?>>--Select--</option>
            <?php foreach($category as $category){
                echo '<option value="'.$category->id.'">'.$category->name.'</option>';
            } ?>
        </select>
    </div>
</div>
<div class="form-group">
    <label class="col-sm-4 control-label form-label">Sub Category</label>
    <div class="col-sm-8">
        <select name="item_category_sub_id" class="form-control" id="category_sub">
            <option value=''>- Select Sub Category -</option>
        </select>
    </div>
</div>
<div class="rightcontact">
    <div class="form-group">
        <label class="col-sm-4 control-label form-label">Manufacturer</label>
        <div class="col-sm-8">
            <select name="item_manufacturer_id" class="form-control" id="item_manufacturer_id">
                <option>- Select Manufacturer -</option>
                <?php foreach($manu as $manu){
                    echo '<option value="'.$manu->id.'">'.$manu->name."</option>";
                } ?>
            </select>
        </div>
    </div>
</div>

我的看法

【问题讨论】:

  • 首先从 db 中获取数据,然后将值与组合框值进行比较,如果两者都匹配,则使用 selected。明白了吗?
  • 你能给我举个例子吗..

标签: php codeigniter combobox


【解决方案1】:

您必须在选项中添加selected 属性。

$category == $category->id ? "selected" : ""

类似的东西

<?php 
    foreach($category as $category){
        echo '<option value="'.$category->id.'" '. $category == $category->id ? "selected" : "" .'>'.$category->name.'</option>';
                                                  ^                                            ^
    } 
?>

【讨论】:

  • $category的d值是多少??
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-12-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多