我从webdb中提取一些数据,将其转换为html并希望将其绑定到扩展xtype的html属性:
App.views.Homecard = Ext.extend(Ext.TabPanel, {
title: "Home",
iconCls: "home",
defaults: {
styleHtmlContent: true
},
items: [{
title: 'TabPanels',
scroll: 'vertical',
html: getPresentations
},
{
title: 'Toolbars',
scroll: 'vertical',
html: '<p>Toolbars can be used as a title bar or as a '
}],
});
查看'html:returnHTML' - 这个变量是在webdb回调中构建的。我想在完成该字符串后调用此页面上的刷新或更新..有人可以帮助我如何?
谢谢! 托德
答案 0 :(得分:2)
首先获取对象对象的引用。您可以通过多种方式执行此操作,具体取决于您获取differentHTML
对象的位置。假设您修改了这样的代码,这样您就可以通过id获取项目对象。
{
id: 'parent'
title: "Home",
iconCls: "home",
defaults: {
styleHtmlContent: true
}
然后使用以下代码来获取需要更改HTML的项目。之后调用doLayout
和doComponentLayout()
,因为不同的HTML可能占用不同的空间。
var item = Ext.getCmp('parent').items.items[0];
item.update(differentHTML);
item.doLayout();
Ext.getCmp('parent').doComponentLayout();
请注意,这是一种黑客行为。通常我要做的是首先定义一个模型来保存你从webdb获得的数据。然后有一个控制器,它将通过应用到模板来更新HTML。这样,您可以更轻松地获得对项目的引用,而无需id。您还可以通过将格式代码与实际数据分开来维护更清晰的代码。 您可以使用以下视频开始了解详情:http://www.sencha.com/learn/xtemplates-part-i/。