如何在自定义组件中启用click事件?

时间:2016-08-19 13:55:33

标签: javascript html events custom-controls webix

尝试创建自定义Webix视图,但我无法启用click事件:

这是我的尝试:http://webix.com/snippet/dbab5734

webix.protoUI({
  name:"testView",  
  $init:function(config)
  {
    this.$view.innerHTML = '<span class="webix_icon fa-question-circle" style="font-size:50px; margin:10px;"></span>';      
  }, 
  defaults:
  {
    value: "",
    height:60,
    width:60
  },
  on_click:{
    webix_view:function(){
      alert();
    }    
  },  
  setValue:function(value){
    console.log(value);
  },
  getValue:function(){
    return this.config.value
  }   
}, webix.ui.view, webix.EventSystem );

似乎webix.EventSystem还不够,但我无法弄清楚我的错误在哪里,因为on_click处理程序在其他情况下正常工作

1 个答案:

答案 0 :(得分:1)

您正在使用“on_click”这是一个鼠标事件。因此,您需要在代码中添加“webix.MouseEvents”以及“webix.ui.view,webix.EventSystem”,它将起作用。 请参阅:

webix.protoUI({
  name:"testView",
/*....your code....*/
  on_click:{
    webix_view:function(){
      webix.message("Hi");

    }    
  },  
/*....your code....*/  
}, webix.MouseEvents, webix.ui.view, webix.EventSystem );