2009-08-03 13 views
0

jqGridプラグインを使用しています。編集フォームの各フィールドにonKeyPressイベントを追加します。jqGridにjavascriptイベントを追加します。

このコードは、IE8のために動作しますが、それはIE7とFFで動作させるために、これを変更する方法

FFとIE7
{name: 'name', index: 'name', width: 200, editable: true, 
    sortable: false, search: true, editoptions: { readonly: false, size: 32, 
    'onKeyPress': 'if($("#cbLanguage").attr("checked"))togeo();' }, 
    editrules: { required: true }} 

に失敗しますか?ありがとう。

+0

問題をお聞かせください。それが呼び出されるかどうかを知るために、関数の中のconsole.logに入れることができます。あなたはデモURLを持っていますか? – redsquare

+0

私は何のエラーもありません。そして悲しいことにURLはありません。私はローカルマシンでテストしています。 – Sorantis

+0

イベントが呼び出されるかどうかを確認するには、KeyUp関数内のconsole.logまたはデバッガーステートメントを試してみてください。イベントが入力ボックスに追加されるかどうか調べるために火薬爆弾を使用できますか? – redsquare

答えて

2

解決策を見つけました! フィールドにイベントを割り当てるには、編集オプションに以下を追加する必要があります。

dataEvents:[{type:'keypress', fn: function(e) { 
if($("#cbLanguage").attr("checked"))togeo(); }}] 
1

イベントの問題を発見するための功労者karim79。

さらに、暗黙の文字列ではなく関数を関数として使用する方がよいでしょう。読み込み/保守が簡単です。

name: 'name', index: 'name', width: 200, editable: true, 
    sortable: false, search: true, editoptions: { readonly: false, size: 32, 
    'onKeyUp': keyUpFn }, 
    editrules: { required: true }} 



function keyUpFn(){ 

$("#cbLanguage").is(':checked')){ 
    togeo(); 
} 

} 
+0

いいえ、残念ながらそれは役に立たなかった – Sorantis

関連する問題