1

我是 Ext JS 的新手,现在有点卡在看起来很容易但我不知道如何实现它的事情上。

我正在尝试从商店中检索应以field.displayfield格式显示的数据,但我无法这样做。

示例:名称:机器 45

应该从存​​储过程中检索机器 45,但是当我定义时:

store:abc,
value: 'program_id'

而不是在它显示的program_id列下显示值'program_id',即

Name:  program_id.

知道如何链接存储过程Ext.form.field.Display吗?我已经尝试了我在网上找到的所有可能的建议。

我在视图文件中的代码是:

var name = Ext.create('Ext.form.field.Display', {
    xtype: 'displayfield',
    id: 'program_name',
    name: 'name',
    fieldLabel: 'Name',
    labelWidth: '250px',
    width: 450,
    height: 20,
    store: programAssetArray,
    value: 'o_program_id'
});

me.items.push(name);

商店代码是:

Ext.define('Availability.store.ProgramData', {
    extend: 'Ext.data.ArrayStore',
    fields: [
        {name: 'o_program_id', type: 'integer'},
        {name: 'o_program_name', type: 'text'},
        {name: 'o_parts_expected', type: 'integer'},
        {name: 'o_start_time', type: 'bigint'},
        {name: 'o_end_time', type: 'bigint'},
        {name: 'o_duration', type: 'bigint'},
        {name: 'o_station_id', type: 'integer'},
        {name: 'o_head_id', type:'integer'}
    ]
});

那么,如何从存储过程中检索数据?

4

1 回答 1

0

显示字段只能显示一个值 - 您不能向其声明商店。您需要显示所有商店值的字段。它们应该组合在一个表单中,您可以在表单中从商店加载记录。

您的name属性应该是o_program_id并且值不应被硬编码:

var name = Ext.create('Ext.form.field.Display', {
    //  ...
    name: 'o_program_id',
    // ...
});

您可以为每个记录值声明此类字段。

于 2013-07-23T22:11:49.030 回答