在ajax请求中从数据库中获取数据后,如何附加带有标签的链接

时间:2018-11-26 09:16:46

标签: javascript php jquery ajax codeigniter

我正在使用ajax和jquery在CI中提出自动完成建议。

我想在这里做什么我在databse中有表,其中有属性slug和属性名称。当用户在文本框中键入内容时,我正在将属性名称显示为自动建议,但是在自动建议之后,我还想将标题的链接附加到标题,以便用户选择属性名称时可以将其重定向到该链接页面链接。我有1000个动态页面。

控制器:

public function get_autocomplete(){
    if (isset($_GET['term'])) {
        $result = $this->Property_model->search_property($_GET['term']);
        if (count($result) > 0) {
        foreach ($result as $row)
            $arr_result[] = array(
                'label' => $row->property_title,
            );
            echo json_encode($arr_result);
        }
    }
}

jQuery

<div class="container">
    <div class="row">
        <h2>Search</h2>
    </div>
    <div class="row">
        <form id="form_search" action="<?php echo site_url('real-estate');?>" method="POST">
             <div class="input-group">
                <input type="text" name="title" class="form-control" id="title" placeholder="Title" style="width:500px;">
                <span class="input-group-btn">
                    <button class="btn btn-info" type="submit">Search</button>
                </span>
             </div>
        </form>
    </div>
</div>

<script src="<?php echo base_url().'assets/search/js/jquery-3.3.1.js'?>" type="text/javascript"></script>
<script src="<?php echo base_url().'assets/search/js/bootstrap.js'?>" type="text/javascript"></script>
<script src="<?php echo base_url().'assets/search/js/jquery-ui.js'?>" type="text/javascript"></script>
<script type="text/javascript">
    $(document).ready(function(){

        $('#title').autocomplete({
            source: "<?php echo site_url('Property/get_autocomplete');?>",

            select: function (event, ui) {
                $(this).val(ui.item.label);
                $("#form_search").submit(); 
            }
        });

    });
</script>

型号:

public function search_property($title){
    $this->db->like('property_title', $title , 'both');
    $this->db->order_by('property_title', 'ASC');
    $this->db->limit(10);
    return $this->db->get('property_detail')->result();
}

请建议我如何添加带有属性名称的链接,或者是否有其他方法可以根据所选属性名称来自定义表单操作网址。

0 个答案:

没有答案