Select下拉框模糊查詢功能實現(xiàn)代碼
來源:易賢網(wǎng) 閱讀:2536 次 日期:2016-07-29 15:12:05
溫馨提示:易賢網(wǎng)小編為您整理了“Select下拉框模糊查詢功能實現(xiàn)代碼”,方便廣大網(wǎng)友查閱!

select下拉列表框支持輸入模糊查詢功能,設計非常的人性化,下面小編給大家分享了關鍵代碼,大家根據(jù)自己的需求適當?shù)奶砑有薷?,有任何問題歡迎給我反饋。

關鍵代碼如下所示:

<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 width="100%">

<TR>

<TD width="24%"><font face="Arial" size="2">Section</font></TD>

<TD COLSPAN=3 width="76%">

<div style="position:relative;">

<span style="margin-left:230px;width:18px;overflow:hidden;">

<select style="HEIGHT: 22px; WIDTH: 250px; margin-left:-232px;" 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" style="width:230px;position:absolute;left:0px;" onkeyup="InputValue(this)" onblur="NoMsg()" onfocus="this.select();InputValue(this)" value="0" >

<div id="msg" style="border:1px solid green; font-size :14PX;white-space:nowrap;overflow:hidden;

width:230px;position:absolute;left:0px;top:20px;display:none"></div>

</div>

<Input Type="Hidden" Name="txtSection" id="txtSection">

</TD>

</TR>

</TABLE>

<p>

</BODY></HTML>

以上所述是小編給大家介紹的Select下拉框模糊查詢功能實現(xiàn)代碼,希望對大家有所幫助

更多信息請查看網(wǎng)絡編程
易賢網(wǎng)手機網(wǎng)站地址:Select下拉框模糊查詢功能實現(xiàn)代碼
關于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 加入群交流 | 手機站點 | 投訴建議
工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務許可證:(云)人服證字(2023)第0102001523號
聯(lián)系電話:0871-65317125(9:00—18:00) 獲取招聘考試信息及咨詢關注公眾號:hfpxwx
咨詢QQ:526150442(9:00—18:00)版權所有:易賢網(wǎng)