{
xtype: 'combobox',
fieldLabel: '需求商',
id: 'companayDemand',
name: 'companayDemand',
store: 'TraderNews',//包含companay的store,后台json格式获得
valueField: 'traderid',
displayField: 'companay',
typeAhead: false,
hideTrigger: true,
emptyText: '请选择...',
minChars: 2,//输入字符长度为2时开始查询
//listConfig属性用来设置模糊查询的关键
listConfig: {
loadingText: '正在查询...',
emptyText: '未找到相关匹配记录!',
allowPaging: false,
getInnerTpl: function () {
// companay为要查询的字段
return '{companay}';
}
},
listeners: {
select: function loadForm() {
var companayId = Ext.getCmp('companayDemand').getValue();
var addform = Ext.getCmp('addformNew');
addform.load({
waitMsg: '正在加载数据请稍后',
//提示信息
waitTitle: '提示',
//标题
url: '/Trader/update',
//请求的url地址
params: {
id: companayId
},
method: 'get',//请求方式
success: function (form, action) {
//加载成功的处理函数 Ext.getCmp('companayDemand').setValue(action.result.companayDemands);
},
failure: function (form, action) {
//加载失败的处理函数
Ext.Msg.alert('提示', action.result.errorInfo);
}
});
}
}
}
store里面的方法
Ext.define('AM.store.TraderNews', { extend: 'Ext.data.Store', model: 'AM.model.TraderNew', autoLoad: false, pageSize: 1500, //---------- add by zhangxin 2012.1.5 整体排序 start---------- remoteSort: true, //---------- add by zhangxin 2012.1.5 整体排序 end---------- proxy: { type: 'ajax', api: { read: '/Trader/JsonIndexNew'//调用TraderController里面的JsonIndexNew方法 }, reader: { type: 'json', root: 'data' } } });
进入.net的后台方 url: '/Trader/JsonIndexNew',
public JsonResult JsonIndexNew() { var tradersList = dbContent.FindAll(); string searchstring = ""; if (Request["query"] != null && Request["query"].Length > 0) { searchstring = Request["query"]; } var companay = from it in tradersList select new { it.traderid, it.companay }; companay = companay.Where(it => it.companay.Contains(searchstring)); return Json(new { success = true, data = companay}, JsonRequestBehavior.AllowGet); }
实现效果