首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

DropDownList怎么实现即可下拉又可编辑 就像百度那样

2013-09-13 
DropDownList如何实现即可下拉又可编辑 就像百度那样!如何实现 DropDownList 既可以选择下拉 又可以编辑且

DropDownList如何实现即可下拉又可编辑 就像百度那样!
如何实现 DropDownList 既可以选择下拉 又可以编辑  
且编辑时,有自动补全功能!补全的数据全部来自数据库!
例如 百度页面: dropdownlist 百度 数据库 可编辑可下拉 自动补全
[解决办法]
你说的是这个吧?http://jqueryui.com/autocomplete/这个其实是个jquery插件。
refer:http://q.cnblogs.com/q/45390/
[解决办法]
其实就是一个textbox,下面放个div而已。jquery autocomplete插件可以快速的实现这个效果。
[解决办法]
给你一个简单的demo:
首先引用这个jquery插件,

<link href="../js/jquery.autocomplete.css" rel="stylesheet" type="text/css" />

    <script src="../js/jquery.autocomplete.js" type="text/javascript"></script>

然后在页面写入javascript代码,
 $(function(){
            $("#<%=txtDWDM.ClientID %>").autocomplete("../services/SearchSydwInfoService.ashx",{
                width:500,
                max:20,
                delay:10,
                cacheLength:1,
                formatItem:function(data,i,max){
                    return data.toString();
                },
                formatResult:function(data,i,max){
                    return data.toString().split(',')[1];
                }
            }).result(function(event,data,formatted){


                var array = data.toString().split(',');
                $("#<%=txtDWDM.ClientID %>").val(array[0]);//单位代码
                $("#<%=txtDWMC.ClientID %>").val(array[1]);//单位名称
            });
        });


这是一个按钮,
<asp:TextBox ID="txtDWDM" runat="server" CssClass="textboxWidth" Width="98%" />

后台ashx:
 public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType = "text/plain";

            if (context.Request.QueryString["q"] != null)
            {
                //
                string key = context.Request.QueryString["q"];
                string keyValues = GetKeyValues(key);
                context.Response.Write(keyValues);
            }
        }

        public string GetKeyValues(string k)
        {
            BLL bll = new BLL();
            DataTable dt = bll.GetSYDWInfo(k).Tables[0];
            StringBuilder sb = new StringBuilder();
            foreach (DataRow dr in dt.Rows)
            {
                sb.Append(dr["result"].ToString() + "\n");
            }
            return sb.ToString().Trim();


        }


[解决办法]
LZ不肯相信事实
[解决办法]
http://wpfactb.codeplex.com看看这个,

热点排行