0

我正在尝试将自定义格式化程序添加到 Dojo DataGrid。据我所知,这个格式化程序应该返回一个带有 html 的字符串以进行演示。

我想在单击时呈现带有 js 回调的链接,即

<a href="javascript:void(0)" onclick="callMeBack()">value</a>

问题是我不想有一个全局函数callMeBack(),而是内联编写回调函数。但我似乎无法让它发挥作用。到目前为止,我写了这个:

 function callMeBack() { ... }
 var structure = [
            {name:"name", field:"name", width: "200px", formatter: function(name) {
                var link = domConstruct.create("a", {innerHTML: name});
                domAttr.set(link, "href", "javascript:void(0)");
                on(link, "click", callMeBack);
                return link.outerHTML;
            }},
            ....                
        ];   

问题似乎是点击回调没有被注册。考虑到网格中使用的 DOM 节点可能会在返回字符串表示之后构建,这很容易理解。

但我怎样才能使这项工作?

4

1 回答 1

0

一种可能的方法是定义一个像 xx.yy.callmeback GLOBALLY 这样的函数,以便找到函数定义。但我不觉得这是最好的方法。

于 2013-02-03T11:21:20.830 回答