包含extjsstore赋值的词条

发布时间:2023-12-08

包含extjsstore赋值的词条

更新:2022-11-11 10:01

本文目录一览:

  1. EXTJS怎么给combox赋值
  2. EXTJS 为下拉框赋值问题
  3. extjs复选框怎么动态取值和赋值
  4. extjs grid.store只能在初始化时赋值吗

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种方式赋值:

  1. 定义时用 value:值
  2. 点击选项赋值
  3. 使用 setValue 或者 setRawValue 方法赋值 注意: setValuesetRawValue 需要在对象渲染后才能执行,否则赋值失败。 对于您的问题,要看代码是否在渲染后赋值,或者在没有 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
});

就是可以调用 storeload 方法进行加载数据。 store 的定义类似下面这样:

var store = Ext.create('Ext.data.Store', {
    model: 'User',
    proxy: {
        type: 'ajax',
        url: '/users.json',
        reader: {
            type: 'json',
            rootProperty: 'users'
        }
    }
});