2009-08-17 13 views
0

「ENTER」キーが押されたときに何らかのアクションを実行するドジョーグリッドがあります。しかし、私はDOJOがキーを押したときに何をしているのかを追加したいだけです。ハンドラを使用しようとすると、doJox.grid._EventsのonKeyDown関数が追加される代わりに、その代わりになります。私のハンドラ関数に追加する前に_Events関数が呼び出されていることを確認する方法はありますか?Dojo Grid Eventを置き換えるのではなく、どのように追加できますか?

答えて

2

グリッドオブジェクトの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から延長されています。

+0

これをaddOnLoad関数に追加して何も得られませんでした。 dojo.addOnLoad(function(){<ここにあなたのコード>}); onKeyPressとonKeyDownの両方を試して、console.logと警告の両方を試しました。私はIE 1.6でdojo 1.3を使用しています。 –

+0

IE 1.6?あなたはIE6を意味しますか – seth

+0

あなたのグリッドはid = 'myGrid'のdivですか?グリッドオブジェクトは未定義ですか? – seth

関連する問題