zoukankan      html  css  js  c++  java
  • easyUI-combobox 动态绑定数据源

    前台

     <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;
     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="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";
            }
        }
    }

  • 相关阅读:
    JS数组方法汇总 array
    jQuery性能优化
    js禁止保存网页的一些代码
    XML LINQ简介
    一个滑动条的DIV+CSS+JS实例
    JS的正则表达式
    jQuery中$.ajax的实现
    MSSQL 2005删除所有表的语句[转]
    Jquery Toggle with Images
    SQLIte default date CURRENT_TIMESTAMP
  • 原文地址:https://www.cnblogs.com/huangf714/p/6252425.html
Copyright © 2011-2022 走看看