Dojo声明性onclick不会触发setter

时间:2013-07-24 12:55:49

标签: dojo

Dojo 1.8

如果我有一个具有重写的onclick setter的小部件:

// in mypackage/ClickableWidget
_setOnClickAttr: function( onClick ) {
    this.onClick = onClick;
    // handle the event...
}

...当我以编程方式创建小部件时,它被调用得很好:

new ClickableWidget({
     onClick: function() {
           alert('clicked');
     }
});

但......当我在声明中创建我的小部件时似乎:

<div data-dojo-type="mypackage/ClickableWidget">
    <script type="dojo/on" data-dojo-event="click">
        alert('clicked');
    </script>
</div>

...它不会触发我重写的onclick setter。

这只是道场的事实,还是我做错了什么?

另外,有没有更好的术语来指代我所谓的“被覆盖的二传手”?

1 个答案:

答案 0 :(得分:1)

更新2

也许您编写脚本标记的方式是错误的:

找到这个:

 <script type="dojo/method" data-dojo-event="onClick" data-dojo-args="evt">

以下是dojo-source的链接:http://dojotoolkit.org/reference-guide/1.7/dojo/isFunction.html

我的最后一次猜测。希望这有帮助。