标签: extjs4

在ExtJS 4中创建带有xtype的扩展

我已经习惯了ExtJS 3.X,但我正在努力使用ExtJS 4.

我想创建一个网格的扩展,并能够使用xtype的网格实例.我知道,我必须设置别名,widget.xtypename但它不适合我.

var MyGrid = Ext.define('mygrid', {
    extend:'Ext.grid.Panel',
    alias: 'widget.mygrid',
    // rest of grid...
});

Ext.create('Ext.window.Window', {
    title:'My Window',
    items:[{
        xtype:'mygrid'
    }]
})
Run Code Online (Sandbox Code Playgroud)

我在Chrome控制台中遇到的错误是 Cannot create an instance of unrecognized alias: widget.mygrid

一些帮助会很有意义

javascript extjs extjs4

13
推荐指数
3
解决办法
2万
查看次数

Ext.ux.form.field.DateTime问题

我创建了一个Ext.ux.form.field.DateTime插件,但这里有一些问题:

  1. 如果我没有设置宽度/高度,则缺少工具栏中的DateTime
  2. 无法在RowEditing插件中显示正确的宽度

在此输入图像描述

Ext.define('Ext.ux.form.field.DateTime', {
    extend:'Ext.form.FieldContainer',
    mixins: {
        field: 'Ext.form.field.Field'
    },
    alias: 'widget.datetimefield',
    layout: 'hbox',
    width: 200,
    height: 22,
    combineErrors: true,
    msgTarget :'side',

    dateCfg:{},
    timeCfg:{},

    initComponent: function() {
        var me = this;
        me.buildField();
        me.callParent();
        this.dateField = this.down('datefield')
        this.timeField = this.down('timefield')
        me.initField();
    },

    //@private
    buildField: function(){
        this.items = [
            Ext.apply({
                xtype: 'datefield',
                format: 'Y-m-d',
                width: 100
            },this.dateCfg),
            Ext.apply({
                xtype: 'timefield',
                format: 'H:i',
                width: 80
            },this.timeCfg)
        ]
    },

    getValue: function() {
        var value,date = this.dateField.getSubmitValue(),time = this.timeField.getSubmitValue();
        if(date){
            if(time){
                var format = …
Run Code Online (Sandbox Code Playgroud)

extjs extjs4

13
推荐指数
1
解决办法
1万
查看次数

ExtJS扩展网格RowEditor插件(编辑数组)

我一直在使用ExtJS网格行编辑插件,对于Web应用程序中的CRUD操作非常自由.现在,我需要允许使用此行编辑插件编辑数据库记录以及相关的集合/数组(来自其他数据存储区).

为此,我想在已选择进行编辑的行中插入拖放网格,一个网格显示左侧的可用(未使用)集合项,另一个网格用于保存右侧定义的集合项.

为了说明我想要做的事情,这里是正常的行编辑插件,其中选择了一行进行编辑:

网格与行编辑

我试图这样做(行编辑器div内的拖放网格):

网格与行编辑加上另一个网格

要做到这一点,我一直试图简单地运行类似的东西,Ext.getCmp(???).add(myDnDGridPanel);但我没有找到正确的东西将其附加到(问题中放入什么).

使用此插件编辑相关的集合/数组以及数据库记录似乎是合理的.有没有人知道向这个行编辑器div添加项目的简单方法?

或者......我是否必须破解/扩展插件才能实现此目的?

extjs extjs4

13
推荐指数
1
解决办法
5171
查看次数

ExtJS:如何从Ext.data.Store获取原始JSON数据?

来自这样的典型商店

Ext.define('User', {
    extend: 'Ext.data.Model',
    fields: [
        {name: 'firstName', type: 'string'},
        {name: 'lastName',  type: 'string'},
        {name: 'age',       type: 'int'},
        {name: 'eyeColor',  type: 'string'}
    ]
});

var myStore = Ext.create('Ext.data.Store', {
    model: 'User',
    proxy: {
        type: 'ajax',
        url : '/users.json',
        reader: {
            type: 'json',
            root: 'users'
        }
    },
    autoLoad: true
});
Run Code Online (Sandbox Code Playgroud)

是否可以从myStore获取原始Json?

extjs4

13
推荐指数
2
解决办法
3万
查看次数

如何读取ExtJS 4中的查询字符串?

我有一个ExtJS应用程序,它使用一些查询字符串参数调用.我想知道如何使用ExtJS 4读取这些参数及其值.

我的ExtJS应用程序URL将如下所示:

http://localhost:8080/myapp?candidate_id=101&candidate_id=102&candidate_id=103
Run Code Online (Sandbox Code Playgroud)

query-string extjs4

13
推荐指数
1
解决办法
1万
查看次数

可用于ExtJS Panel的"工具"按钮的图标

如何设置Panel的"标题栏"中使用的图标?也许我需要自己添加一个图像,但如果是这样,我想我需要在某处定义或配置?

{
    xtype: 'treepanel',
    title: 'Projects',
    width: 200,
    store: Ext.data.StoreManager.lookup('projects'),
    tools: [
        {
            type: 'add', // this doesn't appear to work, probably I need to use a valid class
            tooltip: 'Add project',
            handler: function() {
                console.log('TODO: Add project');
            }
        },
        ...
    ]
},
Run Code Online (Sandbox Code Playgroud)

extjs4

13
推荐指数
2
解决办法
4万
查看次数

Javascript如何在新行上显示数组的每个元素

我有一个字符串构建形式逗号分隔值我split用来获取每个值,然后我想在新行上显示每个值,但真正发生的是我得到的每一个值都在新行上,除了显示的最后两个在同一条线上.只是为了说清楚:

值1

,值2

,值3

,值4,值5

这是我正在使用的功能:

_checkDates: function(dates) {
        if (dates != null)
        {
            var zzz = dates.split(',');
            var xxx = zzz.length;
            console.log(xxx);
            for (var i=0; i<=xxx; i++)
                {
                    zzz[i] = zzz[i] + '<br />';
                    return zzz;
                }
        }
        return dates;
    }
Run Code Online (Sandbox Code Playgroud)

为了清楚这是用ExtJS 4编写的,我几乎可以肯定,在这种情况下,问题是纯JavaScript并且与ExtJS 4无关,但无论如何,也许我错了.

所以任何想法为什么会发生,以及我如何能够让最后的元素进入新线?

谢谢

Leron

javascript extjs4

13
推荐指数
2
解决办法
5万
查看次数

如何将工具栏中的元素与左,中,右对齐

如何在工具栏中左,中,右三个区域?我知道我可以使用->触发所有后续物品的右对齐容器,但中心呢?

extjs extjs4 extjs-mvc extjs4.1

13
推荐指数
2
解决办法
4万
查看次数

如何在EXTJS 4网格中显示嵌套的Json数据?

我正在使用ExtJS 4.0,我想在网格中显示嵌套的JSON数据.为此,我使用Ext.data.reader.Reader文档"加载嵌套数据"中给出的示例.它既简单又简单但现在我想在网格中显示这些数据.我该怎么设置dataIndex

这是我的样本模型和商店:

Ext.define("data", {
    extend: 'Ext.data.Model',
    fields: ['year', 'state'],
    hasMany: {
        model: 'record',
        name: 'record'
    },
    proxy: {
        type: 'rest',
        url: 'Column.json.php',
        reader: {
            type: 'json',
            root: 'data'
        }
    }
});

Ext.define("record", {
    extend: 'Ext.data.Model',
    fields: ['id', 'autorization', 'expendture'],
    belongsTo: 'User'
});
var store1 = new Ext.data.Store({
    model: "data"
});
Run Code Online (Sandbox Code Playgroud)

而我的JSON:

{
    "data": [{
        "year": "2010",
        "state": "MP",
        "record": [{
            "id": "auth",
            "autorization": "9.201"
        }, {
            "id": "exp",
            "expendture": "1.250"
        }]
    }]
}
Run Code Online (Sandbox Code Playgroud)

我想阅读 …

grid json nested extjs extjs4

12
推荐指数
1
解决办法
2万
查看次数

学习ExtJS4

我想将ExtJS4用于我的下一个项目.但是,我是Ext的新手,也不是那些精通Javascript精细点的人.

有几本关于ExtJS3的好书.我应该首先从那些旧书中学习,然后将这些知识应用到v4中,或者API的变化是如此之大以至于没有必要先学习旧的书?

如果没有,那么学习Ext新手的最佳方法是什么?

extjs extjs4

12
推荐指数
2
解决办法
6155
查看次数

标签 统计

extjs4 ×10

extjs ×6

javascript ×2

extjs-mvc ×1

extjs4.1 ×1

grid ×1

json ×1

nested ×1

query-string ×1