textbox codeigniter中的自动完成值

时间:2012-11-03 01:27:50

标签: php javascript html ajax codeigniter

我已经完成了控件自动完成功能,但是使用jquery发布数据时遇到了问题。

<input type="text" id="matakuliah" class="med" name="matakuliah">
<script type="text/javascript">
        $(this).ready( function() {
            $("#matakuliah").autocomplete({
                minLength: 1,

                source:
                function(req, add){
                    $.ajax({
                        url: "<?php echo site_url('bahanAjar/lookup'); ?>",
                        dataType: 'json',
                        type: 'POST',
                        data:req,
                        success:   
                        function(data){
                            if(data.response =="true"){
                                add(data.message);
                            }
                        },
                    });
                },


            });
        });
</script>

在我的控制器上

function lookup(){
        // process posted form data (the requested items like province)
        $keyword = $this->input->post('term');

        $data['response'] = 'false'; //Set default response
        $query = $this->matakuliah_model->lookup($keyword); //Search DB
        if( ! empty($query) )
        {
            $data['response'] = 'true'; //Set response
            $data['message'] = array(); //Create array
            foreach( $query as $row )
            {
                $data['message'][] = array(
                                        'id_matakuliah'=>$row->id,
                                        'value' => $row->matakuliah,
                                        ''
                                     );  //Add a row to array
            }
        }
        if('IS_AJAX')
        {
            echo json_encode($data); //echo json string if ajax request

        }
        else
        {
           $this->load->view('admin/bahan_ajar/form_manage_file_view', $data); //Load html view of search results
        }
    }

代码运行良好,但我想将参数添加到调用数据库。

 $query = $this->matakuliah_model->lookup($keyword, $id_matakuliah);
像这样。我怎么能

$this->input-<post('id_matakuliah') 

来自jquery之前。;

我还有另一个文本框,用于填写textbox matakuliah的自动填充值。

`<input type="hidden" id="matakuliah_post" class="med" name="matakuliah_post">`

当我使用自动填充文本框自动填充另一个文本框时,请帮助我。

1 个答案:

答案 0 :(得分:0)

在这种情况下,req将包含{term:"your search term"}。您可以扩展此javascript对象以传递额外数据。如果您要发布id_matakuliah,可以在$.ajax致电前指定其值,如下所示:

req.id_matakuliah = "Whatever you want to send";