我有一个包含 3 个字段的表单,每个字段我都想使用 jquery 自动完成功能为我自动完成所有这些字段。所以我写了这段代码
html
<input type='text' class='completeme' name='name'/>
<input type='text' class='completeme' name='job'/>
<input type='text' class='completeme' name='lasname'/>
js
$('input.completeme').each(function() {
    $(this).autocomplete({
            source: function(request, response) {
                $.ajax({ url: '<?=base_url()?>patients/autocomplete',
                data: { 'term': this.value},
                dataType: "json",
                type: "POST",
                success: function(data){
                    response(data);
                }
            });
        },
        minLength: 2
});
});
并将两者都添加到视图中,并创建了一个名为 patients.php 的控制器,控制器自动完成
代码
function Autocomplete(){
$this->load->model('Autocomplete');
    $term=$this->input->post('term');
    if(sizeof($term) > 2){      
        $options=array('table'=>'patients','field'=>'patient_name','term'=>$term);
        $q=$this->Autocomplete->GetAutocomplete($options);
        foreach($q as $q)$json[]=$q->patient_name;
        echo json_encode($json);
}
现在我的问题是
- 它不起作用:D ..当我检查萤火虫发布请求时,它没有发布任何值。
- 我如何在自动完成请求中传递字段名称以及其搜索的术语?
- 是否有任何已经存在的 codeigniter 助手/自定义库可以以更清洁的方式做到这一点?
多谢