JQuery UI autocomplete自动补全插件搜索结果去除提示

最近有个后台管理系统要用到自动检索并补全信息的功能,所以我就用到JQuery UI的autocomplete插件,插件挺好用的,api也讲解也挺全的,学习成本低,如果大家有自动补全功能的需求可以去看看。在功能基本完成之后我发现这个自动补全搜索出来的结果总是在结果的最上面出现一行英文的提示,大致意思是告知用户搜索的结果符合要求的有多少条,虽然是一片好心但是导致样式一点都不好看,如下图:


找API也没有发现可以去除这个样式的参数可设置,后来终于找办法了。解决办法如下面代码蓝色字体:
$('#company').autocomplete({
source: function(query, process){
var cityVal = $('#city').val();
if(cityVal > 0){
$.ajax({
type : 'POST',
dataType : 'json',
url : '${pageContext.request.contextPath}/companyGrade/getCompanyInfo',
data : {'cityId': cityVal, 'searchParam': $('#company').val()},
success : function(data) {
if (data.code == 1) {
process( $.map( data.data, function(item){
             return {
               label: item.companyName,
               value: item.companyName,
               companyId: item.companyId
             }
           }));
}else{
return;
}
},
error: function() {
alert('网络异常 请稍后再试');
}
});
}else{
alert("请先选择城市");
return;
}
},

select: function(event, ui){
$('#comId').val(ui.item.companyId);
$.ajax({
type : 'POST',
dataType : 'json',
url : '${pageContext.request.contextPath}/companyGrade/getCompanyGrade',
data : {'companyId': ui.item.companyId},
success : function(data) {
$('#comId').val(ui.item.companyId);
if (data.code == 1) {
$('#infoPercent').val(data.data.companyInfoPercent);
}else{
$('#infoPercent').val('');
}
},
error: function(XmlHttpRequest, textStatus, errorThrown) {
alert('网络异常 请稍后再试');
}
});
},
messages: {
noResults: '', 
results: function(){ 
}
}

});


这里我贴出了ajax异步动态向后台数据库取出检索内容,以便大家参考,希望能对正在用这个插件的你们能有所帮助。我觉得挺方便的。蓝色字体就是去除上图中英文提示的方法,希望能帮助更多人解除疑惑。另外如果对以上代码有疑惑的可以找我,对了,补充一下:我的后台用的Java spring MVC+Mybatis写的。
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现这个功能,你需要先准备一个地区名称和对应码值的数据集,可以将其保存在本地的一个数据文件或者数据库中。然后,在input输入框的autocomplete自动补全功能中,当用户选择一个地区名称时,你可以通过JavaScript代码从数据集中获取对应的码值,并将其同步到相应的地区码值输入框中。具体实现方法可以参考以下步骤: 1. 准备数据集 将地区名称和对应码值的数据保存在一个CSV文件或者JSON文件中,例如: ``` 北京,110000 上海,310000 广东,440000 ... ``` 2. 实现自动补全功能 使用JavaScript中的Autocomplete插件(例如jQuery UI Autocomplete)或者自己实现一个Autocomplete功能,实现输入框的自动补全功能。当用户选择一个地区名称时,触发一个回调函数。 3. 获取码值并同步到输入框 在回调函数中,通过Ajax请求从数据集中获取对应的码值,例如: ```javascript $.get("data.csv", function(data) { // 将CSV文件转换为一个二维数组 var rows = data.split("\n").map(function(row) { return row.split(","); }); // 在二维数组中查找用户选择的地区名称,并获取对应的码值 var selectedValue; for (var i = 0; i < rows.length; i++) { if (rows[i][0] == selectedText) { selectedValue = rows[i][1]; break; } } // 将码值同步到相应的输入框中 $("#code-input").val(selectedValue); }); ``` 在上面的例子中,我们使用jQuery的get方法从CSV文件中获取数据,然后将其转换为一个二维数组。接着,在二维数组中查找用户选择的地区名称,并获取对应的码值。最后,将码值同步到相应的输入框中。 注意,在实际的实现过程中,你需要根据自己的具体情况进行调整和改进。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值