如何在下拉列表中获取所选值,然后显示更多信息

时间:2015-04-26 00:13:05

标签: database codeigniter drop-down-menu

我有这个下拉列表从数据库中提取选项。我想知道如何在选择之后获得所选选项的值,数据库中的其他数据将以表格或形式显示? 它看起来像这样

选择之前

从下拉列表中选择:option1

名称:
年龄:

选择

从下拉列表中选择:option2

姓名:迈克尔 年龄:21

控制器

 public function salesorders() {
        if ($this->session->userdata('logged_in')) {
            $this->header2();
            $data['groups'] = $this->secretary_model->getAllGroups();
            $this->load->view('secretary/transactions',$data);
        } else {
            redirect('secretary/sec_login_view');
        }
    }

模型

function getAllGroups()
    {

        $query = $this->db->query('SELECT firstname FROM tblcustomer');

        return $query->result();

    }

查看

<?php 
            echo "Select Customer";
            $options = array();
            foreach($groups as $group)
            { 
              $options[$group->firstname] = $group->firstname;
            }
            echo form_dropdown('dropdown', $options);
            ?>
            <br>
            <br>
            <br>
                    <table id="myTable" class="table table-bordered" >  
                        <thead >  
                            <tr>  
                                 <th>Order #</th> 
                                 <th>Customer Name </th>  
                                <th>Items</th>  
                                <th>Note</th>  
                                <th>Qtt.</th> 
                                <th>Total Price</th> 
                                <th>Shipping Address</th> 
                                <th>Status</th>  
                                <th>Edit</th>  

                            </tr>  
                        </thead>  
                        <tbody>  

1 个答案:

答案 0 :(得分:1)

似乎您需要在页面加载时填充第一个下拉字段,而不是需要AJAX调用另一个传递所选名称的方法。在该方法中,您将拥有将AJAX输入值传递给模型的代码,该模型按值(在本例中通过名称)返回数据,您将以json_encode的形式返回到ajax。

$(document).ready(function(){
    $('.dropdownElementClass').on('change', function(){
        var value = $(this).val();
        $.ajax({
            method: "POST",
            url: "<?php echo base_url('secretary/getDataByName');?>", 
            data: { name: value }
        })
        .done(function( output ) {
              $('.classOfElementExpectingData').text( output );
        });
    });
});

//控制器的下一个代码

public function getDataByName()
{
    if ($this->input->is_ajax_request()) {
        echo $this->Secretary_model->getDataByName( $this->input->post('name') ) != FALSE ? json_encode( $this->Name_m->getDataByName( $this->input->post('name') ) ) : 'No data for selected name.' ;
    } else {
        echo 'No direct script access allowed.';
    }
}

您可以在谷歌甚至YouTube上搜索相当数量的教程。研究this one,可以帮助你。或者你会搜索类似&#34; codeigniter ajax&#34;在这个地方第一。我相信你可以找到许多类似的问题和答案。祝你好运。