datalist输入框与后台数据库数据动态匹配的示例分析
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要介绍datalist输入框与后台数据库数据动态匹配的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!最近项目中涉及到一个小功能,客户在选择供应商时,由于供应商
千家信息网最后更新 2026年11月01日datalist输入框与后台数据库数据动态匹配的示例分析
这篇文章主要介绍datalist输入框与后台数据库数据动态匹配的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
最近项目中涉及到一个小功能,客户在选择供应商时,由于供应商数目较多(大概3000个左右),因此直接生成下拉框显然不现实,所以就更换解决方案,打算借助HTML5新增的标签datalist来实现输入中文/拼音首字母时,自动进入数据库模糊查询,并返回相应的结果,生成datalist,由于在输入框中的输入内容发生变化时,datalist会自动触发下拉框,所以使用起来比select更便捷。前端部分代码如下:
Html Code:
库存下拉框测试
下拉框测试
测试数据(默认均为d00001):
按 供应商名动态匹配(中文或者拼音均可):
昆山市大陆配件有限公司 ksdlpjyxgs
亿真企业有限公司 yzqyyxgs
泰州市安誊轴皮厂(集团厂) tzsatzpc(jtc)
JavaScript Code:
var listobj=null; //datalist对象 var requestItem=null; //后台返回的json数据中所需的key值 var inputContent=null; //input标签对象 /**search()说明: * inputID: input标签的ID * datalistID: datalist标签的ID * itemName: 后台返回的json数据中所需的key值(仅需表格中中文字段的属性名) * */ function search(inputID,datalistID,itemName) { inputContent=document.getElementById(inputID); var datalist=document.getElementById(datalistID); //防止在无输入内容的情况下产生遗留下拉选项 if(inputContent.value.length==0||inputContent.value==" ") { var sub=datalist.childNodes; if(sub.length>0) { for (var i =sub.length-1; i>=0 ; i--) { datalist.removeChild(sub[i]); } } listobj=null; requestItem=null; inputContent.value=null; return false; } //全局变量赋值 listobj=datalist; requestItem=itemName; var data=""; var url=""; if(/^[a-zA-Z]*$/.test(inputContent.value)) { //检测出是拼音首字母 data="type=searchWords¶m="+inputContent.value; //注意:data-----------需要自定义 url=baseurl + "/servlet/ListDemo"; //注意:url-----------需要自定义 sendRequest("post",url,data,getResult); } else if (/^[\u4e00-\u9fa5]*$/.test(inputContent.value)) { //检测出是中文 data="type=searchChinese¶m="+inputContent.value; //注意:data-----------需要自定义 url=baseurl + "/servlet/ListDemo"; //注意:url-----------需要自定义 sendRequest("post",url,data,getResult); } } //填写仓库下拉框 function getResult(result) { var data=result; var JData=eval("(" + data + ")"); var maxlength=10; //注释:maxlength保证过多查询结果下只显示10条 if(JData.length<=10) { maxlength=JData.length; } var sub=listobj.childNodes; for (var i =sub.length-1; i>=0 ; i--) { listobj.removeChild(sub[i]); //清空datalist所有的下拉选项 } if(JData.length==0) //没有查询结果 { alert("没有符合条件的结果,请重输"); inputContent.value=""; //清空input输入框的值 return false; } for (var i=0;i以上是"datalist输入框与后台数据库数据动态匹配的示例分析"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
数据
输入
下拉
后台
内容
标签
结果
动态
数据库
供应商
拼音
中文
供应
查询
测试
示例
分析
公司
字母
对象
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技
上海卓越科技互联网
美国互联网科技巨头监管
没上市的科技互联网公司
互联网 卓越科技
互联网科技论文
碳银互联网科技有限公司
老年人脱离互联网科技的作文
互联网之后的科技是什么
全球顶尖互联网科技公司
用友工业互联网科技发展
华中科技大学互联网的牛人
沐思想互联网科技有限公司
江苏苏星互联网科技有限公司
东营紫格互联网科技
西安有哪些互联网高科技企业
保山互联网科技靠谱吗
绵阳真晨互联网科技有限公司
互联网科技大佬云集
广州全民伙伴互联网科技有限公司
合肥互联网科技公司
上海致骋互联网科技
互联网养老 桔豆科技
互联网科技有限公司 翻译
互联网巨头投资的硬核科技
汉立互联网科技有限公司联系电话
电子商务与互联网科技的关系
中国科技和美国互联网
美国五大互联网科技公司市值多少
数字互联网科技有限公司