gpt4 book ai didi

javascript - Sencha 2.x MVC : Get element by id

转载 作者:行者123 更新时间:2023-12-02 19:49:29 24 4
gpt4 key购买 nike

我刚刚开始使用 Sencha 框架 2.x。这是我的应用程序:

应用程序/app.js

Ext.Loader.setConfig({
enabled: true
});
Ext.application({
name: 'App',
controllers: ['Generators'],
models: [],
stores: [],
views: ['Main', 'Generator'],
launch: function() {
Ext.create('App.view.Main');
}
});

应用程序/ View /Main.js

Ext.define('App.view.Main', {
extend: 'Ext.NavigationView',
requires: [
'App.view.Generator'
],

config: {
fullscreen: true,
items: [
{
xtype: 'generatorview'
}
]
}
});

应用程序/ View /Generator.js

Ext.define('App.view.Generator', {
extend: 'Ext.Container',
xtype: 'generatorview',
id: 'generator',
config: {
layout: 'vbox',
items: [
{
xtype: 'panel',
html: 'My message: <a id="xxxSet">Set</a> :: <span id="xxxMsg">...</span>',
flex: 1
},
{
dock: 'bottom',
xtype: 'toolbar',
items: []
}
]
}
});

应用程序/ Controller /Generator.js

Ext.define('App.controller.Generators', {
extend: 'Ext.app.Controller',
config: {
refs: {}
},
init: function() {
this.control({
'#xxxSet': { // QUESTION1
tap: 'setMyMessage'
}
});
},

setMyMessage: function() {
'#xxxMsg'.html('Set this message'); // QUESTION2
}
});

正如你所看到的,我在最后一部分( Controller )提出了问题。

  • 问题1:如何为元素设置点击功能(#xxxSet)在 View 中定义为 HTML 内容。
  • 问题2:如何设置消息 View 中定义为 HTML 的元素 (#xxxMsg)内容。

xxxSet = 按钮的 id

xxxMsg = 消息持有者的id

谢谢!

最佳答案

您可以使用Ext#get (它接受一个 id 字符串),它将返回 Ext.dom.Element 的实例。 。这样,您就可以使用 on添加监听器的方法(很像 control),然后是 setHtml更新内容的方法。

init: function() {
Ext.get('xxxSet').on({
tap: 'setMyMessage',
scope: this
});
},

setMyMessage: function() {
Ext.get('xxxMsg).setHtml('Hello');
}

关于javascript - Sencha 2.x MVC : Get element by id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9481597/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com