事件的ExtJS控制器选择器
ExtJS Controller Selector for Events
我有一个视图和一个控制器。该视图的按钮下有菜单,当单击时,控制器将处理哪些项目。如果我放置类选择器,控制器永远不会捕捉到该事件,但如果我移除类选择器,它就会工作。
看看我的代码。
查看
Ext.create('Ext.Button', {
text: 'Add Tab',
cls: 'button',
menu: Ext.create('Ext.menu.Menu', {
cls: 'addMenu',
items: [{
text: 'One'
}, {
text: 'Two'
}]
})
});
和控制器
Ext.define('MyApp.controller.TabController', {
extend : 'Ext.app.Controller',
init : function() {
this.control({
'menu[cls=addMenu]' : {
'click' : this.addTab
}
});
},
addTab : function(a, b, c, d) {
console.log(a, b, c, d);
}
});
我在这里做错了什么?
也许您应该将类名包装成这样的引号
'menu[cls="addMenu"]'
我用另一种方法解决了我的问题。
查看
Ext.create('Ext.Button', {
text: 'Add Tab',
cls: 'button addTab',
menu: Ext.create('Ext.menu.Menu', {
cls: 'addMenu',
items: [{
text: 'One'
}, {
text: 'Two'
}]
})
});
和控制器
Ext.define('MyApp.controller.TabController', {
extend : 'Ext.app.Controller',
init : function() {
this.control({
'button[cls=button addTab] > menu' : {
'click' : this.addTab
}
});
},
addTab : function(a, b, c, d) {
console.log(a, b, c, d);
}
});
这太棒了!
通常,'='运算符更适合于CSS类以外的对象属性,而'~='运算符最适合于包含空格分隔的CSS类列表的属性。
相关文章:
- Windows8应用程序(html&Javascript):从图片库(除了文件选择器)显示图像的另一种方式
- 在动态创建的元素上获取对特定选择器的引用
- AngularJS-在JSON选择器中使用变量名
- 每当您在选择器内移动鼠标时,悬停功能就会重复
- 使用CSS或js,使用动态选择器选择任意li的下一个元素
- jQuery最近父级的数据属性选择器
- 为什么不'在JQuery中找到第二个css选择器的工作
- 为什么 .focus() 不起作用,而 .css(“color”,“red”) 在同一个选择器上起作用
- jquery IE7中的第n个选择器
- Webdriver.io pageObject模式-通过传递参数来定义元素选择器
- jquery日期选择器年份范围默认值
- jquery日期选择器失去了交互性
- 事件的ExtJS控制器选择器
- 如何使用钛合金在控制器中获取选择器值
- UI引导日期选择器不调用内联控制器作用域上的函数
- 引导导航面板和日期选择器,并用javascript调用C#控制器
- UI引导日期选择器弹出不工作与模态和控制器
- 在单击提交按钮时传递日期选择器值给控制器
- 如何对包含 DOM/jquery 选择器的 Angular 1 控制器进行单元测试
- 我如何从我的日期选择器获取和发送选定的日期到控制器