1

我想有条件地在列表的 itemTpl 中应用背景颜色样式。假设我的 itemTpl 看起来像:

itemTpl: '<tpl if="condition"> <div class="highlight"> ... </div> </tpl> '

问题是当我这样做时,样式“突出显示”不适用于整个列表项。

如果我检查 DOM,我会看到我的 itemTpl 的内容在另一个具有“x-list-item”类的 div 中,其中包含另一个具有“x-list-item-label”类的 div。因此,对我的 itemTpl 应用背景样式不会填满整个区域......

有谁知道如何影响整个区域(因此是“x-list-item”或“x-list-item-label”)?

是否有 css/sass 技巧来影响我的 div 的父级?有煎茶技巧吗?

谢谢

4

1 回答 1

4

对不起,我的误解。然后以下将起作用。我确定。

假设您为元素(不是组件,我知道)设置了一个 id,例如:

<span id="something-here">{whatever you want to show}</span>.

然后:

  • Ext.get('something-here')返回你的元素
  • Ext.get('something-here').up('div.x-list-item')div返回具有类标签的该节点的最近父节点x-list-item

我已经通过show()and对此进行了测试,hide()并且该元素交互良好。

要将 CSS 类添加到元素,只需使用addCls('special-css-class')

于 2012-04-08T10:43:36.977 回答