前台
{
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();
}