0

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

このコードは IE8 では機能しますが、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 }}

これを変更して IE7 と FF で動作させるにはどうすればよいですか? ありがとう。

4

2 に答える 2

2

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

dataEvents:[{type:'keypress', fn: function(e) {
if($("#cbLanguage").attr("checked"))togeo(); }}]
于 2009-08-03T12:22:34.890 に答える
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();
 }

}
于 2009-08-03T10:58:37.850 に答える