0

我对煎茶很陌生,可能不知道你需要什么。我正在尝试使用 ajax 提取 HTML 页面的一些内容。例如, id = "content" 的 div 中的文本。

我想把这个提取出来的内容放到一个面板或者容器中煎茶。

这是我的观点:

Ext.define("myapp.view.Main", {
   extend: 'Ext.tab.Panel',

   requires: ['Ext.TitleBar'],

   config: {
       tabBarPosition: 'bottom',

       items: [
          {
            title: 'Welcome',
            iconCls: 'home',

            styleHtmlContent: true,
            scrollable: true,

            html: FUNCTION_TO_GET_CONTENT   .join("")
         }
      ]
   }
});

我想知道是否有任何方法可以让 HTML 页面的内容显示在面板中,但我不知道如何。有人可以帮助我理解这一点以及如何最好地解决这个问题吗?

更新:

基本上我想做的是复制这个 JQuery 语句的结果:

 $("#mylocaldiv").load("sourcePage.html #mainDiv");

然后将结果附加到选项卡面板中的 html 属性。

4

3 回答 3

3

首先,为您的视图添加一个别名(确保它前面是widget.

Ext.define("myapp.view.Main", {
    extend: 'Ext.tab.Panel',
    alias: 'widget.Main',
    ...
});

然后通过执行以下任一操作来获取您的视图:

myView = Ext.Viewport.down('Main');

或者

myView = Ext.ComponentQuery.query('Main');

现在您可以像这样访问您的项目:

myView.items.items

而且由于您的面板是唯一的项目,因此它将是零项目。然后,您可以使用它的setHtml方法来附加 html:

myView.items.items[0].setHtml('your html here');

在将 html 文件加载到面板方面,我相信 Sencha 删除了 Ext.dom.Element.load()。我会使用一个简单的 Ajax 请求,然后在成功回调中将结果附加到面板中。请参见此处:将 html 文件加载到面板中

于 2012-07-20T13:42:20.513 回答
1

sencha 不是构建大型应用程序的好工具,所以最好选择另一个。我试过了,它浪费了我的时间,根本没有用,windows 面板和更多使用不使用 css 的图像开发的。如果我们用它构建大型应用程序,我们可能会降低应用程序的性能。

于 2012-07-17T04:42:53.437 回答
0

观看此视频

它将帮助您解决问题,并让您对 Sencha Touch 有更深入的了解。

于 2012-07-17T03:08:54.417 回答