开发者社区> 问答> 正文

jquery 的Autocomplete在选中检索信息有字母V的就没法绑定输入框? 400 请求出错

function bindPersonAutoComplete(attribName,mustFlag){
//如果没有这个参数默认为true
if(mustFlag==undefined){
mustFlag=true;
}
$("input[name='"+attribName+"']").autocomplete(personAutoComplete, {
mustMatch:true,
selectFirst:true,
scroll:true,
minChars: 0,
cacheLength:1,
max:40,
width: 400,
scrollHeight: 250,
matchContains: "word",
autoFill: false,
formatItem: function(row, i, max) {
return i + "/" + max + ": \"" + row.name + "\" "  + " ["+row.unitName+"] "+ row.spell+" 职工号:"+row.account;
},
formatMatch: function(row, i, max) {
return row.spell + " " + row.name+" "+row.unitName;
},
formatResult: function(row) {
return row.name.substr(1,row.name.length);
},
//自动补全没有检索到结果执行的函数
noResult:function(){
//判断是否需要无此人员的提示
if(mustFlag){
//给自动补全目标元素绑定失去焦点事件
$("input[name='"+attribName+"']").bind("blur",function(){
$("input[name='"+attribName+"']").val("");
closeTips(attribName);
});
//显示tip提示框
showTips('无此人员,请重新输入',attribName);
}
},
//自动补全没有检索到结果执行的函数
//自动补全检索到结果执行的函数
yesResult:function(){
if(mustFlag){
//如果自动补全能检索到数据,则移除目标元素失去焦点事件
$("input[name='"+attribName+"']").unbind("blur");
//关闭提示框
closeTips(attribName);
}
}
});
$("input[name='"+attribName+"']").result(cascadeChangePersonInfo);   
}

<div> 
 
</div>

展开
收起
kun坤 2020-05-25 20:35:09 640 0
1 条回答
写回答
取消 提交回答
  • 实现一个智能提示功能需要ajax、数据库、jsp/php、算法等很多知识,
    如果数据量大,还需要特殊优化
    一个小功能,花费太大精力很不划算
    92find.com上的一个js插件实现了搜索框自动补全托管服务,
    只要一行javascript代码就可以实现百度、淘宝搜索框提示的全部功能
    比如:汉字拼音匹配、拼音前缀匹配、模糊搜索、智能容错,还可以自定义提示词汇及其排序权重
    花五分钟我的网站就可以部署同百度、淘宝一样强大好用的输入提示功能
    同时兼容IE、Firefox、Safari、Chrome、Opera各种浏览器
    兼容ios、Android、Windows

    2020-05-26 13:13:25
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关课程

更多

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载