包含extjsstore赋值的词条
更新:2022-11-11 10:01
本文目录一览:
EXTJS怎么给combox赋值
if (typeof (InitData) == 'undefined' || InitData == null) {
InitData = {};
}
InitData.Terminal = {
terminalNos: [{id: '', name: '全部'}] // 下拉框终端号
};
// 从后台取值
InitData.init = function () {
// 初始数据的取得
Com.Ajax.createAjaxRequest({
url: 'Data/GetTerminalData',
succFn: function (obj) {
for (var i = 0, max = obj.data.items.length; i < max; i++) {
var ter = obj.data.items[i];
InitData.Terminal.terminalNos.push({id: ter.id, name: ter.name});
}
}
});
};
数据源
var t_store = Ext.create('Ext.data.Store', {
fields: ['id', 'name'],
data: InitData.Terminal.terminalNos,
proxy: {
type: 'memory',
reader: {
type: 'json',
root: 'items'
}
}
});
var tercombo = Ext.create('Ext.form.ComboBox', {
fieldLabel: '终端编号',
id: id_combo_terminal,
name: 'slipInfo.Terminal',
labelWidth: 80,
width: 278,
value: '', // 设置默认选中值
store: t_store,
editable: false, // 设置为只可选择,不可编辑
queryMode: 'local', // 本地数据时使用'local'
valueField: 'id',
displayField: 'name'
});
C# 后台代码
ListHashtable list = new ListHashtable();
Hashtable rtnVal = new Hashtable();
List<string> terlist = Common.TerminalNo.TERMINAL_LIST;
if (terlist != null)
{
for (int i = 0; i < terlist.Count(); i++)
{
Hashtable ht = new Hashtable();
ht["id"] = terlist[i];
ht["name"] = terlist[i];
list.Add(ht);
}
}
rtnVal["totalcount"] = terlist.Count();
rtnVal["items"] = list;
return CreateJsonResult(true, data: rtnVal);
EXTJS 为下拉框赋值问题
EXTJS 下拉框 combobox
可以通过以下3种方式赋值:
- 定义时用
value:值
- 点击选项赋值
- 使用
setValue
或者setRawValue
方法赋值 注意:setValue
或setRawValue
需要在对象渲染后才能执行,否则赋值失败。 对于您的问题,要看代码是否在渲染后赋值,或者在没有setValue
时是否正常。
extjs复选框怎么动态取值和赋值
var tabClassBox = new Ext.form.ComboBox({
columnWidth: .15,
editable: false,
triggerAction: 'all',
valueField: 'id',
displayField: 'value',
emptyText: '请选择...',
store: new Ext.data.Store({
url: '/ViewAdd/boxStore?p=dbms',
reader: new Ext.data.JsonReader({
fields: [
{name: 'id', mapping: 'id'},
{name: 'value', mapping: 'value'}
]
})
})
});
extjs grid.store只能在初始化时赋值吗
当然不只是在初始化时赋值。下面是官方的例子:
store.load({
params: {
group: 3,
type: 'user'
},
callback: function(records, operation, success) {
// do something after the load finishes
},
scope: this
});
就是可以调用 store
的 load
方法进行加载数据。
store
的定义类似下面这样:
var store = Ext.create('Ext.data.Store', {
model: 'User',
proxy: {
type: 'ajax',
url: '/users.json',
reader: {
type: 'json',
rootProperty: 'users'
}
}
});