ASP代碼:由訪問者自行輸入資料的下拉框

來源:互聯網
上載者:User
訪問|資料|下拉|下拉

下拉框可列出資料,然後還可以由使用者自行輸入,如何做到這一點?

具有edit功能的combobox    
 
<HTML>  
 <HEAD>  
 <PUBLIC>  
   <COMPONENT  TAGNAME="COMBOBOX">  
   <PROPERTY  NAME="Text"  GET="get_Text"  PUT="put_Text">  
   <PROPERTY  NAME="Width"  GET="get_Width"  PUT="put_Width">  
   <METHOD  NAME="SetFocus"  INTERNALNAME="htcFocus">  
   <METHOD  NAME="AddItems"  INTERNALNAME="htcAddItems">      
   <EVENT  NAME="onYYCenter"  ID="idEnter">  
   <EVENT  NAME="onYYCChoose"  ID="idChoose">  
   <ATTACH  EVENT="oncontentready"  ONEVENT="htcInit()">  
   </COMPONENT>  
 </PUBLIC>  
 <SCRIPT  LANGUAGE="javascript">  
   function  htcInit()  
   {  
 defaults.viewLink=document;  
 defaults.viewInheritStyle=false;  
 Body_Init();  
   }  
   function  htcAddItems(items)  
   {  
 var  i,len;  
 len=pCombo.options.length;  
 for(i=0;i<len;i++)  
 {pCombo.remove(0);}  
 for(i=0;i<items.length;i++)  
 {  
   var  o;  
   if((typeof  items[i])=='string')  
   {  
     if(!HasTheValue(items,i))  
     {  
       o=document.createElement('OPTION');  
       o.text=items[i];  
       pCombo.add(o);  
     }  
   }  
 }  
   }  
   function  htcFocus()  
   {  
     pText.focus();  
   }  
   function  get_Text()  
   {  
 return  pText.value;  
   }  
   function  put_Text(Value)  
   {  
 pText.value=Value;  
   }  
   function  get_Width()  
   {  
 return  pCombo.style.width;  
   }  
   function  put_Width(Value)  
   {  
 pCombo.style.width=Value;  
   }  
 </SCRIPT>  
 
 <SCRIPT  LANGUAGE="javascript">  
   function  Body_Init()  
   {  
 var  iRight=pCombo.clientWidth;  
 var  iBottom=pCombo.clientHeight;  
 var  iLeft=(pCombo.clientWidth-18);  
     pCombo.style.clip='rect(0,'+iRight+','+iBottom+','+iLeft+')';  
 pText.style.width=(pCombo.clientWidth);  
 pText.style.height=(pCombo.clientHeight);  
 pText.style.top=0;  
 pText.style.left=0;  
   }  
   function  Combo_Select()  
   {  
 pText.value=pCombo.options[pCombo.selectedIndex].text;  
   }  
   function  Text_ChkKey()  
   {  
     if(event.keyCode==13)  
         {  
   idEnter.fire();  
 }  
   }  
   function  HasTheValue(sitems,i)  
   {  
 var  ii;  
 for(ii=0;ii<i;ii++)  
 {  
   if(sitems[ii]==sitems[i])  
     return  true;  
 }  
 return  false;  
   }  
 </SCRIPT>  
 </HEAD>  
 <BODY>  
   <SELECT  STYLE="position:absolute;left:0;top:0;"    NAME="pCombo">  
   </SELECT>  
   <INPUT  STYLE="position:absolute;left:0;top:0;z-index:4000"  onKeyPress="Text_ChkKey()"  TYPE="TEXT"  NAME="pText">  
   </BODY>  
</HTML>



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.