datalist输入框与后台数据库数据动态匹配的示例分析
发表于:2025-11-10 作者:千家信息网编辑
千家信息网最后更新 2025年11月10日,这篇文章主要介绍datalist输入框与后台数据库数据动态匹配的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!最近项目中涉及到一个小功能,客户在选择供应商时,由于供应商
千家信息网最后更新 2025年11月10日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安全错误
数据库的锁怎样保障安全
华为网络技术支持做什么
服务器疫情消杀
NUKE下载软件开发
软件开发团队构成包括哪些
司天象网络技术
国家经济统计数据库 万方
传奇世界单机数据库版本太低
软件开发前段开发
江苏应用软件开发大概要多少钱
网络安全加密技术的问题有哪些
数据库关系模型图例题及答案
厦门机器人rpa软件开发公司
镇江服务器工控机
班队课 网络安全活动方案
数据库怎么连接会计软件
合肥 国企 软件开发
ai服务器怎么拆卸
软件开发者设备
架式服务器的电源标准
自制TFP服务器
四川计算机应用软件开发价位
网络安全课件初中
文心雕龙翻译软件开发
山西创新软件开发服务优化
抖音用的数据库是什么
数据库字段名带反斜杠
myelipse 连数据库
成都网络安全工程师工资
和谐世界土壤数据库
ai服务器怎么拆卸