我正在使用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();
}
请建议我如何添加带有属性名称的链接,或者是否有其他方法可以根据所选属性名称来自定义表单操作网址。