dropdownlist textbox 结合,下拉框和文本框结合的控件

这篇博客介绍了如何利用AjaxControlToolkit的ComboBox控件,实现一个结合下拉框和文本框功能的控件。控件允许用户既可以选择已有选项,也可以自由输入。文章提供了页面和脚本代码示例,并提到了一些实现中的不足,鼓励读者根据自身需求进行改进。
摘要由CSDN通过智能技术生成

实际上这样的控件有点不伦不类了,如果没有强烈的需求还是不要用的为好。

借用AjaxControlToolkit的ComboBox实现即可选择又可输入的,同时具有下拉框和文本框功能的控件。

实现中仍有不足,需要大家自己根据自己需求改进。

 

页面代码

<%@ Control Language="vb" AutoEventWireup="false" CodeBehind="CustomCombo.ascx.vb" Inherits="UketukeWeb.CustomCombo" %>
<%@ Register assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" tagprefix="asp" %>

<div>
    <asp:ComboBox ID="ComboBox1" runat ="server" Width="100px" Height="15px" CssClass="combobox" ClientIDMode="AutoID"
        AutoCompleteMode ="SuggestAppend"
        AutoPostBack="false"
        DropDownStyle="DropDownList"
        CaseSensitive="False"
        >
    </asp:ComboBox>
    <asp:HiddenField ID="ItemCount" runat="server" Value="0" ClientIDMode="AutoID"/>   
    <asp:HiddenField ID="ComboHiddenText" runat="server" Value="" ClientIDMode="AutoID"/>   
    <asp:HiddenField id="ComboHiddenValue" runat="server" Value="" ClientIDMode="AutoID"/>   
</div>

 

脚本代码

<script language="javascript" type="text/javascript">
    $(document).ready(function () {
        var combobox = $('#<%=ComboBox1.ClientID %>');
        var indexHidden = $('#<%=ComboBox1.ClientID %>_HiddenField');
        var tag = $("#<%=Me.ID %>");
        $('#<%=ComboBox1.ClientID %> button').attr("tabindex", "-1");
        //$('#<%=ComboBox1.ClientID %> table').css("position", "static");
        $('#<%=ComboBox1.ClientID %> table').css("top", "1px");
        combobox.find("input:text").addClass(" text");
        //$('#<%=ComboBox1.ClientID %> ul').click(function () {
        //    $(this).hide();
        //});

        if ("<%=Me.ImeMode %>") {
            combobox.find("input:text").addClass(" ime<%=Me.ImeMode %>");
        } else {
            combobox.find("input:text").addClass(" imeOff");
        }

        if (eval("<%=Me.Items.Count = 0  %>".toLocaleLowerCase())) {
            combobox.find("input:text").val("");
        }

        if ("<%=Me.MustInput %>") {
            tag.SetMustInput("<%=Me.MustInput %>");
            var textbox = combobox.find("input:text");
            if (textbox.attr("ReadOnly") != "readonly" && textbox.attr("disabled") != "disabled") {
                textbox.attr("MsgTitle", "<%=Me.MsgTitle %>");
            }
        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值