标签: extjs4

如何比较java中JsonObject的null值

stackoverflow成员我需要你的帮助.

我在下面给出了一个JsonObject

{
"Id": null,
"Name": "New Task",
"StartDate": "2010-03-05T00:00:00",
"EndDate": "2010-03-06T00:00:00",
"Duration": 1,
"DurationUnit": "d",
"PercentDone": 60,
"ManuallyScheduled": false,
"Priority": 1,
"parentId": null,
"index": 2,
"depth": 1,
"checked": null }
Run Code Online (Sandbox Code Playgroud)

我得到parentId为null.我想将parentId值从null替换为0.

我试图用下面提到的代码来做

if(jsonObject.get("parentId") == null || jsonObject.get("parentId") == "")
    {
        System.out.println("inside null");
        jsonObject.put("parentId", 0);
    }
    else
    {
        System.out.println("inside else part");
        //jsonObject.put("parentId", jsonObject.getInt("parentId"));
        jsonObject.put("parentId", 0);
    }
Run Code Online (Sandbox Code Playgroud)

但它似乎没有奏效.我在这做错了什么.

java json hibernate extjs4

27
推荐指数
3
解决办法
7万
查看次数

使ExtJS 4网格内容可选

ExtJS 4(Sencha)中的网格默认情况下不允许选择内容.但我想让这成为可能.

我试过这个网格配置:

viewConfig: {
    disableSelection: true,
    stripeRows: false,
    getRowClass: function(record, rowIndex, rowParams, store){
        return "x-selectable";
    }
},
Run Code Online (Sandbox Code Playgroud)

使用这些css类(基本上针对我在Chrome中可以看到的每个元素):

/* allow grid text selection in Firefox and WebKit based browsers */

.x-selectable,
.x-selectable * {
                -moz-user-select: text !important;
                -khtml-user-select: text !important;
    -webkit-user-select: text !important;
}

.x-grid-row td,
.x-grid-summary-row td,
.x-grid-cell-text,
.x-grid-hd-text,
.x-grid-hd,
.x-grid-row,

.x-grid-row,
.x-grid-cell,
.x-unselectable
{
    -moz-user-select: text !important;
    -khtml-user-select: text !important;
    -webkit-user-select: text !important;
}
Run Code Online (Sandbox Code Playgroud)

我知道你可以覆盖Ext 3中的网格行模板,如下所示,但我不知道如何在Ext 4中做同样的事情:

templates: {
    cell: new Ext.Template(
    '<td class="x-grid3-col x-grid3-cell x-grid3-td-{id} x-selectable …
Run Code Online (Sandbox Code Playgroud)

javascript extjs extjs4

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

EXTJS 4 - 全局异常监听器

我有一种情况,我ajax从各种Ext gridpanel等服务器向服务器发出请求.在管理区域.

如果没有活动,则登录用户将被注销.5分钟这是正常的.

在这种情况下,服务器将重定向发送回403登录页面.

现在我插入一个:

listeners: {
    exception: function(proxy, response, operation, eOpts) {
        if (response.status == '403')
            window.location = 'login';
    }
}
Run Code Online (Sandbox Code Playgroud)

对于每个store's代理都有点矫枉过正.

有人可以很友好,让我知道如何为ExtJS和服务器之间的所有通信添加一个监听器?

我正在使用MVC应用程序架构,所以它可能是一个controller.js或一个内衬app.js.

谢谢

javascript extjs extjs4 extjs-mvc

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

up()和down()与Ext.getCmp()

我很困惑我需要在up()down()和Ext.getCmp(ID)之间使用哪一个grep对象.

对我来说,定义ID以通过Ext.getCmp('ID')对象和检索对象更容易,并且代码看起来更干净.

例如:

console.log(this.up('panel').up('panel').down('grid'));
console.log(Ext.getCmp('myPanel'));
Run Code Online (Sandbox Code Playgroud)

哪一个更适合表现?

javascript extjs extjs4 extjs4.1

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

ExtJS 4动态更改网格存储

在ExtJS 4中更改网格存储是否可行?

例如,我有两个模型:

User = Ext.define('User',{
  extend: 'Ext.data.Model',
  [...],
  hasMany: 'Product'
});

Product = Ext.define('Product',{
  extend: 'Ext.data.Model',
  [...]
});
Run Code Online (Sandbox Code Playgroud)

和两个网格.第一个网格与Store链接,后者使用User模型并从后端加载嵌套的json数据,如

{
  users: [{
     id: 1,
     products: [
       {id: 1},
       {id: 2}
     ]
  }, {
     id: 2,
     products: [
       {id: 3},
       {id: 4},
       {id: 5}
     ]
  }]
}
Run Code Online (Sandbox Code Playgroud)

我想要的是当你点击第一个网格中的行时,第二个网格必须显示用户的产品,而不连接到服务器.我所知道的只是user.products();返回一个Ext.data.Store对象.所以想法是改变第二个网格的商店user.products();,但没有这样的方法grid.setStore():-)

提前致谢

grid extjs extjs4

25
推荐指数
3
解决办法
5万
查看次数

Extjs 4:创建一个iFrame窗口

我需要在Extjs中创建一个iFrame窗口.以前在ExtJS 3.x中我会这样做:

bodyCfg: {
    tag: 'iframe'
}
Run Code Online (Sandbox Code Playgroud)

WindowExtJS 4类似乎没有bodyCfg.

关于如何制作iFrame ExtJS 4窗口的任何想法?

javascript extjs extjs4

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

有关Ext.define()中initComponent()的最佳实践

我正在使用ExtJS的新MVC时尚编写所有组件Ext.define().

无论是在内部定义属性initComponent()还是简单地设置它们,我都有点挣扎property: 42,.

是否有广泛接受的最佳做法?

initComponent()只是在必要时使用(即,当我想要一些动态或设置范围时),这使得保持功能更短并且让我有些丑陋this.并且总是使用它有利于我,我永远不必移动以前的属性initComponent()只是因为我想让它更具动感.

不幸的是,Sencha的文档并没有说明这一点,可用的例子似乎按照他们的意愿去做.

javascript extjs extjs4

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

ExtJS 4 - 在必填字段上标记红色星号

我有这个问题,fieldLabel当一个字段标记为"必需"(或allowBlank: false)时,我需要在旁边添加一个红色星号

在ExtJS3中,我们可以通过覆盖轻松实现此攻击Ext.layout.FormLayout,如下所示:

Ext.override(Ext.layout.FormLayout, {
    getTemplateArgs: function(field) {
        var noLabelSep = !field.fieldLabel || field.hideLabel;
        var labelSep = (typeof field.labelSeparator == 'undefined' ? this.labelSeparator : field.labelSeparator);
        if (!field.allowBlank) labelSep += '<span style="color: rgb(255, 0, 0); padding-left: 2px;">*</span>';
        return {
            id: field.id,
            label: field.fieldLabel,
            labelStyle: field.labelStyle||this.labelStyle||'',
            elementStyle: this.elementStyle||'',
            labelSeparator: noLabelSep ? '' : labelSep,
            itemCls: (field.itemCls||this.container.itemCls||'') + (field.hideLabel ? ' x-hide-label' : ''),
            clearCls: field.clearCls || 'x-form-clear-left'
        };
    }
});
Run Code Online (Sandbox Code Playgroud)

但这在ExtJS4中是不可能的.FormLayout不再适用,标签实际上是Ext.form.field.Base通过使用调用的mixins来呈现的Ext.form.Labelable …

forms extjs required-field extjs4

23
推荐指数
4
解决办法
3万
查看次数

如何根据值的变化更改extjs网格单细胞背景颜色?

要改变整行背景颜色,我们可以使用getRowClass,但是如何只为一个单元格和特定列做同样的逻辑....任何想法?

//EXTJS
viewConfig: {
    getRowClass: function(record, index) {
        var c = record.get('change');
        if (c < 0) {
            return 'price-fall';
        } else if (c > 0) {
            return 'price-rise';
        }
    }
}

//CSS
.price-fall { 
        background-color: #FFB0C4;
}
.price-rise {
        background-color: #B0FFC5;
}
Run Code Online (Sandbox Code Playgroud)

编辑:

有一种方法可以做到这一点:

 function change(val){
    if(val > 0){
        return '<div class="x-grid3-cell-inner" style="background-color:#B0FFC5;"><span style="color:green;">' + val + '</span></div>';
    }else if(val < 0){
        return '<div class="x-grid3-cell-inner" style="background-color:#FFB0C4;"><span style="color:red;">' + val + '</span></div>';
    }
    return val || 0;
}
Run Code Online (Sandbox Code Playgroud)

然后只是:

...
{header: …
Run Code Online (Sandbox Code Playgroud)

css grid extjs row extjs4

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

如何在ExtJS 4中使用Ext.define?

我是ExtJS 4的新手,需要一些帮助来理解它是如何Ext.define工作的.

实际上我想做的是类似于门户网站示例中的portlet,在我的应用程序中,我需要在我的不同选项卡中添加很多对象,所以为了组织我的代码而不是只有一个非常大的脚本,我想在一个单独的文件中定义我需要的每个组件,然后在需要时在主脚本中调用它(我将主要使用这些示例,这就是为什么我想知道它是如何Ext.define工作的所以我可以调整这些示例并使它们成为可能以我想要的方式工作).

我希望我很清楚.

并提前感谢您的帮助.

portlet extjs extjs4

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

标签 统计

extjs4 ×10

extjs ×9

javascript ×5

grid ×2

css ×1

extjs-mvc ×1

extjs4.1 ×1

forms ×1

hibernate ×1

java ×1

json ×1

portlet ×1

required-field ×1

row ×1