Php codeigniter中匹配后自动完成擦除不工作

Php codeigniter中匹配后自动完成擦除不工作,php,codeigniter,autocomplete,Php,Codeigniter,Autocomplete,我正在使用autocomplete来完成我的项目,它可以很好地显示下面类似记录的图像 但当我在文本框中输入更多字母时,结果与下图相同 所以,我如何删除它,结果应该显示匹配的数据 <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery-autocomplete/1.0.7/jquery.auto-complete.js"></script> <script

我正在使用autocomplete来完成我的项目,它可以很好地显示下面类似记录的图像

但当我在文本框中输入更多字母时,结果与下图相同

所以,我如何删除它,结果应该显示匹配的数据

<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery-autocomplete/1.0.7/jquery.auto-complete.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.js"></script>
<!-- <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script> -->
<script type="text/javascript" src="<?php echo base_url(); ?>assets/js/jquery-ui.min.js"></script>
<input class="form-control ui-autocomplete-input" name="src" id="src" type="text" value="<?if (!empty($rule_info['src'])) {echo $rule_info['src'];} else{ echo 'any';}?>" pattern="[a-zA-Z0-9_.:]+" placeholder="Source Address" <?if (!empty($rule_info['src'])) {} else{ echo 'disabled';}?> autocomplete="off">
$(function() {
    $( "#dst" ).autocomplete({ //the recipient text field with id #username
        source: function( request, response ) {
            $.ajax({
                url: "<?php echo base_url();?>rule/search_alias_for_rule",
                dataType: "json",
                data: request,
                error: function(xhr, status, error) {
                  var err = eval("(" + xhr.responseText + ")");
                  alert(err.Message);
                },
                success: function(data){
                    if(data.response == 'true') {
                       response(data.message);
                    }
                }
            });
        }
    });
});

我该怎么做?请帮助我。

尝试设置$.ajax函数中的方法类型和数据:

$(function() {
    $( "#dst" ).autocomplete({ //the recipient text field with id #username
        source: function( request, response ) {
            $.ajax({
                type: 'GET',
                data: {
                    term: request.term
                },
                url: "<?php echo base_url();?>rule/search_alias_for_rule",
                dataType: "json",
                error: function(xhr, status, error) {
                  var err = eval("(" + xhr.responseText + ")");
                  alert(err.Message);
                },
                success: function(data){
                    if(data.response == 'true') {
                       response(data.message);
                    }
                }
            });
        }
    });
});
$(函数(){
$(“#dst”).autocomplete({//id为#username的收件人文本字段
来源:功能(请求、响应){
$.ajax({
键入:“GET”,
数据:{
期限:request.term
},
url:“规则/搜索规则别名”,
数据类型:“json”,
错误:函数(xhr、状态、错误){
var err=eval(“+xhr.responseText+”);
警报(错误消息);
},
成功:功能(数据){
如果(data.response==“true”){
响应(数据、消息);
}
}
});
}
});
});

默认情况下,
like
操作符类似于:

$this->db->like('title', 'match');
// Produces: WHERE `title` LIKE '%match%' ESCAPE '!'  
对您而言,上述条件正在发挥作用

请尝试以下代码段:

$this->db->select('name');
$this->db->from('alias');
$this->db->like('name', $username,'after');   // Produces: WHERE `name` LIKE 'username%' ESCAPE '!'
$this->db->limit('5');
$query = $this->db->get();     

更多信息,请单击。

现在通过更改ajax中的成功函数完成

success: function(data){
   if(data.response == 'true') {
      response(data.message);
   }
   else{
      response(data.message).remove();
   }
}

欢迎如果您认为这个答案值得以后参考,请接受。
success: function(data){
   if(data.response == 'true') {
      response(data.message);
   }
   else{
      response(data.message).remove();
   }
}