【问题标题】:How can I add to a Dojo Grid Event instead of replacing it?如何添加到 Dojo 网格事件而不是替换它?
【发布时间】:2010-11-20 05:42:29
【问题描述】:

我有一个道场网格,我想在按下“ENTER”键时对其执行一些操作。但是,我只想添加 DOJO 在按下某个键时已经执行的操作。当我尝试使用处理程序时,它会替换 dojox.grid._Events 中的 onKeyDown 函数,而不是添加到它。有什么方法可以确保在处理函数中添加之前调用 _Events 函数?

【问题讨论】:

    标签: datagrid grid handler dojo


    【解决方案1】:

    您可以连接到网格对象上的 onKeyPress 函数。例如:

    var grid = dijit.byId('myGrid');
    dojo.connect( grid, "onKeyPress", function(evt) {
      if(evt.keyCode === dojo.keys.ENTER) { 
        console.log('ENTER!'); 
      }
    });
    

    dojox.grid._Grid 类(它是所有网格的父类)从 dojox.grid._Events 扩展而来,因此所有这些方法都可用于连接。

    【讨论】:

    • 我在 addOnLoad 函数中添加了这个,但什么也没得到。 dojo.addOnLoad(function() { });尝试了 onKeyPress 和 onKeyDown,同时尝试了 console.log 和 alert。我在 IE 1.6 中使用 dojo 1.3。
    • 您的网格是否在 id = 'myGrid' 的 div 中?网格对象是否未定义?
    猜你喜欢
    • 2012-08-26
    • 2015-02-05
    • 1970-01-01
    • 2016-04-29
    • 2016-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多