相思资源网 Design By www.200059.com
根据网上查找到的 typeahead使用方法,到最后一步时就出错,数据能从数据库读取出来,但在输入框显示提示时,全都显为:underfined。捉摸了半天都发现不了问题出在哪儿。后来在http://blog.64cm.com/post/2014/08/13/%E4%BD%BF%E7%94%A8bootstrap-typeahead%E6%8F%92%E4%BB%B6 上不经意发现这么一句话:“在当前版本的typeahead中,已经不再支持在source属性中直接调用ajax方法获取数据源了。”提醒了我,因为我根据网上的方法,是直接在source中调用ajax方法。
再回头现在的ace demo,虽然没有调用ajax的示例,但也有注释说明如何用,只不过用的是英文(题外话:做技术的懂英语真的很重要。),经过一翻调试,终于能正确显示了。贴出代码如下:
js代码
<script type="text/javascript"> jQuery(function($) { //typeahead.js //example taken from plugin's page at: https://twitter.github.io/typeahead.js/examples/ var substringMatcher = function() {//substringMatcher()方法 return function findMatches(query, process) {//query 是配备的关键字,processj是返回的值 var matches, substringRegex; var params = {"token": getStorage("token"), "flag":0,"name":query}; var parameter_str=""; for(var key in params){ parameter_str+="&"+key+"="+params[key]; } var fullurl=getOption("gykj_host")+"institution/list"+getOption("gykj_callbackparam")+"="+getOption("gykj_callbackfunc")+parameter_str; $("#submenu_info").html(fullurl); $.ajax({ url:fullurl, type:'get', dataType:"jsonp", jsonp:getOption("gykj_callbackparam"), jsonpCallback:getOption("gykj_callbackfunc"), async:false, error:function(){ alert("列表:"+getOption("connectionErrorMessage")); }, success:function(data){ //$("#submenu_info").html(fullurl); if(data.code==0){ var arr,substringRegex; arr=[]; substrRegex = new RegExp(query);//这必须有,要不还是显示为underfined for(var item in data.data){ var str= data.data[item].name; if (substrRegex.test(str)) { // the typeahead jQuery plugin expects suggestions to a // JavaScript object, refer to typeahead docs for more info arr.push({ value:str}); } } process(arr); } } }) } } $('input.typeahead').typeahead({ hint: true, highlight: true, minLength: 1 }, { name: 'states', displayKey: 'value', source: substringMatcher()//当前版本source属性中不能直接调用ajax方法获取数据源,通过substringMatcher()方法 }); }); </script>
html
<!-- inline scripts related to this page --> <script src="/UploadFiles/2021-04-02/ace-elements.js">以上所述是小编给大家介绍的使用bootstrap typeahead插件实现输入框自动补全之问题及解决办法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
相思资源网 Design By www.200059.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
相思资源网 Design By www.200059.com
暂无使用bootstrap typeahead插件实现输入框自动补全之问题及解决办法的评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。