easyUI-combobox 动态绑定数据源

原创 2013年06月25日 09:50:24

前台

 <link rel="stylesheet" type="text/css" href="../css/easyui.css"/>
 <script type="text/javascript" src="../js/jquery-1.7.1.min.js"></script>
 <script type="text/javascript" src="../js/jquery.easyui.min.js"></script>
     <script type="text/javascript">
         var vID = "DDLCC";
         $(function () {
             $('#' + vID).combobox({
                 valueField: 'TPrice', //TPrice
                 textField: 'typeName',
                 //注册事件
                 onChange: function (newValue, oldValue) {
                     if (newValue != null) {
                         var thisKey = encodeURIComponent($('#' + vID).combobox('getValue')); //搜索词
                         var thisType = ""; //车辆类型
                         var urlStr = "AutoComplete.ashx?objType=" + thisType + "&objStr=" + thisKey;
                         $("#" + vID).combobox("reload", urlStr);
                     }
                 },
                 onSelect: function (record) {
                     setValue(record.typeName);                  
                     //document.getElementById("TextBox4").value = record.TPrice;
                     $("#TextBox4").val(record.TPrice);
                 }
             });
         });
         function setValue(vTxt) {
             $('#' + vID).combobox('setValue', vTxt);
         }
    </script>
  <style type="text/css">
   .combo
   {
   height:15px;
   border:1px  solid #CECCCD;     
   overflow :hidden ;
   }
   .combo .combo-text{
   height:15px; 
   font-size:12px;
   line-height:15px;
   color :#000000;
   }
   .combo .combo-arrow{
 background:#E0ECF9 url('../css/images/combo_arrow.gif') no-repeat 0px 0px;
 width:14px; 
 height:15px;
 overflow:hidden; 
 vertical-align:middle;
 cursor:pointer;
 opacity:0.6;
 filter:alpha(opacity=60);
   }
 </style>

    <select id="DDLCC" class="easyui-combobox" name="DDLCC"  style="width:84px;" data-options="required:true" title="键入搜索查询" >                           
         </select>

 

后台

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Data;
using Newtonsoft.Json;
using System.Text;

 

namespace used_car.web
{
    /// <summary>
    /// AutoComplete 的摘要说明
    /// </summary>
    public class AutoComplete : IHttpHandler
    {
        protected DataTable dt = null;
        public void ProcessRequest(HttpContext context)
        {
            context.Response.Cache.SetCacheability(HttpCacheability.NoCache);
            ClearClientPageCache();
            context.Response.ContentType = "text/plain";       
            string strObjTypee = "", strObjStr = "";
             if (context.Request.QueryString["objType"] != null && context.Request.QueryString["objStr"]!=null)
             {
                 strObjTypee = context.Server.UrlDecode(context.Request.QueryString["objType"].ToString());
                 strObjStr = context.Server.UrlDecode(context.Request.QueryString["objStr"].ToString());
                 dt = linkeMaterials(strObjTypee, strObjStr);
                 if (dt != null)
                 {
                     string data2 = JsonConvert.SerializeObject(dt);                   
                     context.Response.Write(data2);
                     context.Response.Flush();
                     context.Response.End();
                 }
             }
        }

        public DataTable linkeMaterials(object objType, object objStr)
        {
            DataTable dt = new DataTable();
            if (objStr != null)
            {
                if (!string.IsNullOrWhiteSpace(objStr.ToString()))
                {
                    //left(T11,2)='" + objType + "' or
                    string strSql = "select top 15  C.T46 as typeName, C.T45 as ID,C.T47 as TPrice from [dbo].[JC79] as C where  T46 like'%" + objStr + "%'";
                    DataSet dsJC97 = Maticsoft.DBUtility.DbHelperSQL.Query(strSql);
                    dt = dsJC97.Tables[0];
                }
            }
            return dt;
        }
        StringBuilder sbJC97 = new StringBuilder("");
        public string linkeMaterials2(object objType, object objStr)
        {
            if (objStr != null)
            {
                if (!string.IsNullOrWhiteSpace(objStr.ToString()))
                {
                    //left(T11,2)='" + objType + "' or
                    string strSql = "select top 15  C.T46 as 型号名称, C.T47 as 现行价格, C.T45 as ID,C.T11 as 种类编号 from [dbo].[JC79] as C where T46 like'%" + objStr + "%'";
                    DataSet dsJC97 = Maticsoft.DBUtility.DbHelperSQL.Query(strSql);
                    if (dsJC97 != null)
                    {
                        DataTable dtJC97 = dsJC97.Tables[0];
                        int dtCount = dtJC97.Rows.Count;
                        if (dtCount > 0)
                        {
                            for (int i = 0; i < dtCount; i++)
                            {
                                sbJC97.Append("{ typeName: \"" + dtJC97.Rows[i]["型号名称"] + "\",ID: \"" + dtJC97.Rows[i]["ID"] + "\",Price: \"" + dtJC97.Rows[i]["现行价格"] + "\",ZL: \"" + dtJC97.Rows[i]["种类编号"] + "\"}");
                                if (i != (dtCount - 1))//如果不是最后一个
                                {
                                    sbJC97.Append(",");
                                }
                            }
                        }

                    }
                }
            }

            return sbJC97.ToString();
        }
        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
        public static void ClearClientPageCache()
        {
            HttpContext.Current.Response.Buffer = true;
            HttpContext.Current.Response.Expires = 0;
            HttpContext.Current.Response.ExpiresAbsolute = DateTime.Now.AddDays(-1);
            HttpContext.Current.Response.AddHeader("pragma", "no-cache"); HttpContext.Current.Response.AddHeader("cache-control", "private"); HttpContext.Current.Response.CacheControl = "no-cache";
        }
    }
}

easyui combobox动态绑定数据

1.jsp上的写法 2.js $(function(){ // $("#first_catalogue").parent(".l").show(); $('#...
  • Gaowahaha
  • Gaowahaha
  • 2017年09月04日 21:55
  • 1406

easyUI 渲染 combobox 加载数据源 && 添加自定义数据

最近接触easyUI比较多,小知识点才做出来又遇到一样的问题,脑子不好使,就记下来吧。 大概说明一下数据结构,AgentId对应Value,WebsiteName对应Text,至于从后台获取数据原...
  • nnn_net
  • nnn_net
  • 2016年10月09日 11:29
  • 2962

JQueryEasyUI框架下的combobox的取值和绑定——善良公社

对于最近的使用中,给我的感觉就是,借用官网JqueryEasyUI上的一句话,EasyUI是基于JQuery用户界面插件的集合,我把它理解成一种插件,不知道有没有问题。而使用easyui,不需要写很多...
  • dandanzmc
  • dandanzmc
  • 2013年11月20日 20:35
  • 23872

easyui-combobox 绑定数据的俩中方式

  • MsdnWoo
  • MsdnWoo
  • 2016年08月05日 15:49
  • 1401

easyui-combobox、combotree后台数据数据组装与前台绑定实例

  • 2015年09月18日 14:34
  • 2KB
  • 下载

easyUI-combobox 动态绑定数据源

前台                     var vID = "DDLCC";          $(function () {              $('#' + vID)...
  • lybwwp
  • lybwwp
  • 2013年06月25日 09:50
  • 15403

C# comboBox 绑定值的方法

在C#的winform中,我们都发现comboBox没有一个能绑定内容的容器,而此外的控件都有一个tag属性用来绑定信息,也没有仔细查过,vs为什么这么设计,不过有一种方法能够解决这个问题。 (1)我...
  • lybwwp
  • lybwwp
  • 2015年02月10日 17:37
  • 2721

如何动态给GridView添加数据源

 在asp.net中,给控件添加数据源,一般可以参用控件的数据源配置向导,但个人感觉,不够灵活,不方便传递参数。比与在建立objectdatasource时,参数源就只能选择:Cookie,Contr...
  • iloveyoubaby
  • iloveyoubaby
  • 2008年07月23日 15:42
  • 1779

.net的Winform中,dataGridView数据源动态绑定!

大体说,这几种方式! 1:       借助DataTable                                                                    ...
  • zhifeiya
  • zhifeiya
  • 2013年05月08日 15:50
  • 1677

将ComboBox 控件绑定到数据

怎样让ComboBox显示表中的一个字段,同时又绑定另一个字段。而绑定多个字段时典型的如列表控件Combobox、ListBox控件,需要键值对,这时就需要指定DataSource(实现IList接口...
  • susan19890313
  • susan19890313
  • 2012年05月17日 10:23
  • 1622
收藏助手
不良信息举报
您举报文章:easyUI-combobox 动态绑定数据源
举报原因:
原因补充:

(最多只允许输入30个字)