2011-12-16 8 views
0

、結果がnullの場合、デフォルト値を設定するにはどのような方法があり、私は意味:NULL可能表示テキストcolModelで

colModel: [ 
{ name: 'Date', index: 'Date', width: 35, formatter: 'date', formatoptions: { newformat: 'd/m H:i' }, sorttype: 'date', **IFISNULLDISPLAY: '-'** } 
] 

答えて

1

あなたがiqGridのバグを見つけたことを私のためと思われます。 here可変optsoptsformatoptions

op = $.extend({},op,opts.colModel.formatoptions); 

cellval非空の場合のに対してopに拡張される(here参照)日付フォーマッタの内部次いで

var opts= {rowId: rowId, colModel:cm, gid:ts.p.id, pos:colpos }; 

に設定されます使用されますop

return $.fmatter.util.DateFormat(op.srcformat,cellval,op.newformat,op); 

バグが空cellvalために実行されるanother lineではなく、ラインが(それがファイルjquery.jqGrid.src.jsの数字5054及び5052を有する)

に固定されなければならない op

return $.fn.fmatter.defaultFormat(cellval, opts); 

optsを使用することですあなたがformatter: 'date'formatoptionsdefaultValue: '-'が正しい動作しますthe demoから見ることができますが、それはまだ文書化されていませんどのように

return $.fn.fmatter.defaultFormat(cellval, op); 

+0

私の質問は日付に関するものでしたが、日付だけでなくすべてのタイプについて質問したいと思いました。 – Alexandre

+0

@Alexandre:[ドキュメント](http://www.trirand.com/jqgridwiki/doku.php ?id = wiki:predefined_formatter#predefined_format_types)どの定義済みフォーマッタが 'defaultValue'プロパティをサポートしているかを見ることができます。 'date'型の' defaultValue'プロパティをサポートするためにjqGridのコードを変更する方法を示します。 [jquery.fmatter.js](https://github.com/tonytomov/jqGrid/blob/master/js/jquery.fmatter.js)のコードを見て、 '$ .fn.fmatter.defaultFormat 'あなたは' defaultValue'のサポートを追加する他のほとんどのフォーマッタに同様の変更を加えることができます。 – Oleg

関連する問題