网站首页  汉语字词  英语词汇  考试资料  写作素材  旧版资料

请输入您要查询的考试资料:

 

标题 Select下拉框模糊查询功能实现代码
内容
    select下拉列表框支持输入模糊查询功能,设计非常的人性化,下面小编给大家分享了关键代码,大家根据自己的需求适当的添加修改,有任何问题欢迎给我反馈。
    关键代码如下所示:
    <HTML>
    <HEAD>
    <META http-equiv='Content-Type' content='text/html; charset=gb2312'>
    <TITLE>可输入的下拉框</TITLE>
    </HEAD>
    <BODY >
    <Script Language="Javascript">
    var j = 0;
    function SelectValue(obj)
    {
    var input = obj.parentNode.nextSibling;
    document.all.box2.value = obj.options[obj.selectedIndex].text;
    document.getElementById("txtSection").value=obj.options[obj.selectedIndex].value;
    alert(document.getElementById("txtSection").value);
    }
    function InputValue(obj)
    {
    var n = 1;
    var tmpObj;
    var src = document.all.SelectOption;
    var msg = document.all.msg;
    if(event.keyCode != 40 && event.keyCode != 38 && event.keyCode != 13){
    if(obj.value!=""){
    msg.style.display="";
    msg.innerHTML="";
    if(msg.hasChildNodes())
    {
    msg.childNodes[0].parentNode.removeChild(msg.childNodes[0]);
    }
    for (var i=0;i<src.length;i++){
    var selValue = document.createElement("div");
    var selText = document.createElement("div");
    selText.value = src(i).value;
    selText.innerHTML = src(i).text;
    if (src(i).text.toLowerCase().indexOf(obj.value.toLowerCase())==0){
    selText.setAttribute("id","selText"+n);
    selText.onmouseover=function (){
    this.style.backgroundColor='#003399';
    this.style.color ='#ffffff';
    }
    selText.onmouseout=function (){
    this.style.backgroundColor='#ffffff';
    this.style.color ='#000000';
    }
    selText.onclick=function (){
    document.all.box2.value = this.innerHTML;
    msg.style.display="none";
    document.getElementById("txtSection").value=this.value;
    }
    msg.appendChild(selText);
    n++;
    }
    }
    }
    else {
    document.all.msg.style.display="none";
    }
    }
    else {
    //press down key
    if(event.keyCode==40){
    j++;
    for (var i=0; i<src.length; i++)
    {
    tmpObj = document.getElementById("selText"+i);
    if(tmpObj != null){
    tmpObj.style.backgroundColor='#ffffff';
    tmpObj.style.color ='#000000';
    }
    }
    tmpObj = document.getElementById("selText"+j);
    if(tmpObj != null){
    tmpObj.style.backgroundColor='#003399';
    tmpObj.style.color ='#ffffff';
    }else{
    j = 0;
    }
    }
    //press up key
    if (event.keyCode==38){
    j--;
    for (var i=0; i<src.length; i++)
    {
    tmpObj = document.getElementById("selText"+i);
    if(tmpObj != null){
    tmpObj.style.backgroundColor='#ffffff';
    tmpObj.style.color ='#000000';
    }
    }
    tmpObj = document.getElementById("selText"+j);
    if(tmpObj != null){
    tmpObj.style.backgroundColor='#003399';
    tmpObj.style.color ='#ffffff';
    }else{
    j = 2;
    }
    }
    //press enter key
    if (event.keyCode==13){
    tmpObj = document.getElementById("selText"+j);
    document.all.box2.value = tmpObj.innerHTML;
    msg.style.display="none";
    document.getElementById("txtSection").value=tmpObj.value;
    }
    }
    }
    function SelMatch(src)
    {
    var currSel = document.all.box2.value;
    for (var i=0;i<src.length;i++){
    if (src(i).text==currSel)
    {
    src.options(i).selected = true;
    }
    }
    }
    function NoMsg()
    {
    if(document.activeElement.id=="msg")
    return false;
    else
    document.all.msg.style.display='none';
    }
    </Script>
    <TABLE border=0 cellPadding=1 cellSpacing=0>
    <TR>
    <TD width="24%"><font face="Arial" size="2">Section</font></TD>
    <TD COLSPAN=3 width="76%">
    <div>
    <span>
    <select onchange="SelectValue(this)" onclick="SelMatch(this)" id="SelectOption" name="SelectOption" >
    <OPTION value='ALL' Selected>ALL</OPTION>
    <OPTION value='0TEST1'>0TEST1 = Testing 1
    <OPTION value='0TEST1'>0TEST2 = Testing 1
    <OPTION value='0TEST1'>0TEST3 = Testing 1
    <OPTION value='SECTION'>SECTION = Section Description XXXXX AAA
    </OPTION>
    </select></span>
    <input name="box2" id="box2" onkeyup="InputValue(this)" onblur="NoMsg()" onfocus="this.select();InputValue(this)" value="0" >
    <div id="msg"></div>
    </div>
    <Input Type="Hidden" Name="txtSection" id="txtSection">
    </TD>
    </TR>
    </TABLE>
    <p>
    </BODY></HTML>
    以上所述是小编给大家介绍的Select下拉框模糊查询功能实现代码,希望对大家有所帮助
随便看

 

在线学习网考试资料包含高考、自考、专升本考试、人事考试、公务员考试、大学生村官考试、特岗教师招聘考试、事业单位招聘考试、企业人才招聘、银行招聘、教师招聘、农村信用社招聘、各类资格证书考试等各类考试资料。

 

Copyright © 2002-2024 cuapp.net All Rights Reserved
更新时间:2025/5/21 21:22:44