【问题标题】:ExtJs MVC put a button handler inside a controllerExtJs MVC 在控制器中放置了一个按钮处理程序
【发布时间】:2012-12-27 19:03:20
【问题描述】:
ExtJs MVC 中是否有任何方法可以将按钮处理程序放入控制器中,如下所示:
this.control({
'storage_settings button[action=submit_settings]': {
handler: this.submit_settings_handler
})
或者我是否必须使用其他东西,例如 click 事件?
【问题讨论】:
标签:
javascript
extjs
extjs4
dom-events
extjs-mvc
【解决方案1】:
好吧,您的代码确实定义了要收听的按钮 (storage_settings button[action=submit_settings]),但没有定义要收听的事件(除非有一个名为 handler 的事件,但没有)。
handler 是一个配置选项,如果您不使用 MVC,您可以提供(因此处理程序将在视图代码中)。由于您使用的是 MVC,因此您应该收听 click 事件。所以:
this.control({
'storage_settings button[action=submit_settings]': {
click: this.submit_settings_handler
});
这也应该有效:
this.control({
'storage_settings button[action=submit_settings]': {
click: function( aButton, aEvent, aOptions )
{
}
});