Dropdownlist可输入,可选择的方法

在做下拉框的时候通常会要求既可以输入也可以选择,在网上也找到过好用的控件,但是很多都是要求注册,或者安装的,而且都是中文的:(在这里使用的方法不使用其它的控件,而且代码写的很少,主要的思路将下拉框除了按钮部分都给屏蔽掉,将服务器端的textbox使用绝对位置给放到屏蔽的部分中去,赋值的时候都是给textbox值这样就可以达到既可以输入又可以选择的下拉框了。
下面就是关于这个方法的具体代码
其中分为三部分,第一部分是写的javascript脚本;第二部分为.html的设置;第三部分为后台代码,给textbox添加javascript的事件

 function addTxtTanto(va){ 
     document.all("txtTitle").value=va;                    //将ddl中选择的值给文本框
    document.all("txtTitle").select();                         //将ddl跳转到选择的值上
}
function checktitle(){                        //检查输入的文字在ddl中的text值是否存在
    var drp = document.all("DDLTitle");     //定义ddl
    var t=document.all("txtTitle");                 //定义textbox
    var j=0;                                                         //计数
    if(t.value==""){
     }else
            for(var i=0;i<drp.length;i++){
                  if(t.value==drp.options(i).text){
                       drp.value=drp.options(i).value;
                       break;
                  }else{
                       j=j+1;
                  }
             }
             if(j==drp.length){
                  t.value="";
                  t.select();
                  alert("タイトルが存在していません。");
             }
      }
}


< div id="selDiv" style="Z-INDEX: 100; LEFT: 48px; VISIBILITY: visible; CLIP: rect(0px 110px 80px 92px); POSITION: absolute; TOP: 26px">
<!--CLIP: rect(0px 110px 80px 92px);将该区域内容抠除掉-->
        < asp :dropdownlist id="DDLTitle" style="Z-INDEX: -1" runa t="server" Width="110"> </ asp:dropdownlist>
</div>
< asp:textbox id="txtTitle" style="Z-INDEX: 103; LEFT: 47px; POSITION: absolute; TOP: 26px" runat="server" Font- Size="10" Width="111" maxLength="50" Height="22"> < /asp:textbox>

Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
        txtTitle.Attributes("onblur") = "javascript:checktitle();"
        DDLTitle.Attributes.Add("Onchange", "addTxtTanto(this.options[this.selectedIndex].innerText)")
end sub

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值