0

我已经完成了控制自动完成,但是我在用 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。;

我有另一个文本框,用于填充来自文本框 matakuliah 的自动完成值。

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

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

4

1 回答 1

0

在这种情况下req将包含{term:"your search term"}. 您可以扩展此 javascript 对象以传递额外数据。如果你想发布id_matakuliah,你可以在调用之前分配它的值,如下所示$.ajax

req.id_matakuliah = "Whatever you want to send";
于 2012-11-21T20:30:49.263 回答