combo 边写边选的注意事项

前台

{
                    xtype: "combo",
                    triggerAction: "all",
                    mode: "remote",
                    minChars: 1,                  //多少个字符促发查询
                    queryParam: "search",     //这个必须的,因为后台要用到这个参数
                    forceSelection: true,
                    editable: true,
                    hiddenName: "cbSuppliersCode",
                    id: "cbIdSuppliersCode",
                    fieldLabel: "供应商代码",
                    allowBlank: false,
                    valueField: "id",
                    displayField: "value",
                    store: new Ext.data.Store({
                      proxy: new Ext.data.HttpProxy({ url: "http://www.cnblogs.com/AppHandler/Suppliers/Suppliers.ashx?Flag=comboData", method: 'POST' }), // 数据源
                        reader: new Ext.data.JsonReader({ totalProperty: "totalProperty", root: "root", fields: [{ name: 'id' }, { name: 'value'}] })// 如何解析
                        })
                  
                }

 

后台:

//search千万不要忘记取参数的值来当查询条件

  string SearchKey = "";
            if (context.Request["search"] != null)
            {
                if (Common.JS.ReplaceDangerCode(context.Request["search"].ToString().Trim()) != "")
                {
                    SearchKey = Common.JS.ReplaceDangerCode(context.Request["search"].ToString().Trim());
                }

            }
            StringBuilder sb = new StringBuilder();
           
            selectData sd = new selectData();
            DataTable dt = sd.select("Id ", "ABC_Suppliers", "id like '%" + SearchKey + "%'", "[id]", 0);
            int count = dt.Rows.Count;
            if (count > 0)
            {
                sb.Append("{");
                sb.Append("'totalProperty':");
                sb.Append(count);
                sb.Append(",");
                sb.Append("root:");
                sb.Append("[");
                for (int i = 0; i < count; i++)
                {
                    sb.Append("{");
                    sb.Append("id:");
                    sb.Append("'");
                    sb.Append(dt.Rows[i][0].ToString());
                    sb.Append("'");
                    sb.Append(",");
                    sb.Append("value:");
                    sb.Append("'");
                    sb.Append(dt.Rows[i][0].ToString());
                    sb.Append("'");
                    sb.Append("}");
                    if (i != count - 1)
                        sb.Append(",");
                }


                sb.Append("]");
                sb.Append("}");


            }
            return sb.ToString();
        }

posted @ 2011-08-23 15:28  windback  阅读(182)  评论(0)    收藏  举报