1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > ajax实现输入框文字改变展示下拉列表的效果

ajax实现输入框文字改变展示下拉列表的效果

时间:2020-10-11 07:18:53

相关推荐

ajax实现输入框文字改变展示下拉列表的效果

web前端|js教程

ajax,输入框,下拉列表

web前端-js教程1.样式

源码是模板吗,ubuntu 新建账户,爬虫会更新嘛,php网页 保存,seo电气符号lzw

2. html脚本

淘宝客代理版源码,ubuntu中卸载jdk,tomcat类加载器面试题,爬虫和大猩猩,php解析上传的压缩包,Seo-joonlzw

........省略常规脚本汽车品牌名:<input type="text" name="generalBrandName" value="${*.generalBrandName}" data-validation-engine="validate[required]" disabled="disabled" onfocus="showAndHide(List1,show);" onblur="showAndHide(List1,hide);"/> 必填*

<%--

--%> <%-- 宝马--%> <%-- 奥迪--%> <%-- --%>

淘宝客源码 sdk,vscode写完如何看页面,ubuntu ln命令,tomcat启动参数修改,java爬虫不完,php 自动创建文件夹,嘉兴信息化seo推广报价,电影分享社区网站源码lzw

........省略常规脚本汽车厂商名:<input type="text" name="brandName" value="${*.brandName}" data-validation-engine="validate[required]" disabled="disabled" onfocus="showAndHide(List2,show);" onblur="showAndHide(List2,hide);" /> 必填*

3.通过JS来实现ajax异步请求 根据输入的内容过滤

//页面加载的时候 jQuery(function($) { if (navigator.userAgent.indexOf("MSIE") > 0) { document.getElementById(generalBrandName).attachEvent("onPropertyChange", appendList); document.getElementById(randName).attachEvent("onPropertyChange", appendList); } else if (navigator.userAgent.indexOf("Firefox") > 0) { document.getElementById(generalBrandName).addEventListener("input", appendList, false); document.getElementById(randName).addEventListener("input", appendList, false); } }); //////// 预加载 jQuery(function($) { txtValue = $("#generalBrandName").val(); //////// 给txtbox绑定键盘事件 $("#generalBrandName").bind("keyup", function() { var currentValue = $(this).val(); if (currentValue != txtValue) { appendList(List1,currentValue); txtValue = currentValue; } }); txtValue = $("#brandName").val(); //////// 给txtbox绑定键盘事件 $("#brandName").bind("keyup", function() { var currentValue = $(this).val(); if (currentValue != txtValue) { appendList(List2,currentValue); txtValue = currentValue; } }); }); //实现动态显示下拉列表内容的function //根据输入框中的值来筛选obj中的值 function appendList(obj,value){ value = encodeURIComponent(value); value = encodeURIComponent(value); //两次使用encodeURI() switch(obj){ case "List1": //根据车品牌名来刷选List1中的值 $.getJSON( ctx + "/car/carmodel/**.do", {keyWord : value, id : new Date().getTime()}, function (json) { createLis(ListLi1,json); } ); break; case "List2": //根据车厂商名来刷选List2中的值 $.getJSON( ctx + "/car/carmodel/**.do", {keyWord : value, id : new Date().getTime()}, function (json) { createLis(ListLi2,json); } ); break; } } function createLis(obj,json){ switch(obj){ case "ListLi1": //根据车品牌名来刷选List1中的值 var executerp = document.getElementById(obj); //动态生成下拉列表框 executerp.innerHTML=""; var ul=document.createElement("ul"); $.each(json, function (i, item) { var li=document.createElement("li"); var str = "getValue(generalBrandName,\"+item.brandNameGeneral+",randIdGeneral,\"+item.brandIdGeneral+");showAndHide(List1,hide)"; li.setAttribute("onmousedown",str); li.appendChild(document.createTextNode(item.brandNameGeneral)); ul.appendChild(li); }); executerp.appendChild(ul); break; case "ListLi2": //根据车厂商名来刷选List2中的值 var executerp = document.getElementById(obj); //动态生成下拉列表框 executerp.innerHTML=""; var ul=document.createElement("ul"); $.each(json, function (i, item) { var li=document.createElement("li"); var str = "getValue(randName,\"+item.brandName+",randId,\"+item.brandId+");showAndHide(List1,hide)"; li.setAttribute("onmousedown",str); li.appendChild(document.createTextNode(item.brandName)); ul.appendChild(li); }); executerp.appendChild(ul); break; } } //显示或者隐藏层 function showAndHide(obj,types){ var Layer=window.document.getElementById(obj); switch(types){ case "show": Layer.style.display="block"; appendList(obj,\); break; case "hide": Layer.style.display="none"; break; } } //获取选中节点的内容 function getValue(obj1,str,obj2,idx){ var input=window.document.getElementById(obj1); input.value=str; var input=window.document.getElementById(obj2); input.value=idx; }

4.展示效果

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。