私はjqGridを使用しており、モデルに日付フィールドを持つ列があります:
colModel: [
...
{ name: 'dayin',
label: 'Day In',
formatter: 'date',
formatoptions:{newformat:"m/d/Y"},
editable: true
},
...
]
grid.local-en.js
ファイルを変更していないため、デフォルトsrcFormat
はY-m-d
であり、デフォルトnewFormat
はm/d/Y
. Y-m-d
サーバーから、MySQL から標準形式で日付を取得しています。m/d/Y
予想どおり、グリッド内および編集時に表示されます。
問題は、行を保存しようとすると、デフォルトのm/d/Y
に変換されるのではなく、形式としてサーバーに戻されることです。私は、フォーマッタ機能が、インラインまたはフォーム保存時にへの変換を自動的に処理すると想定していました。日付フィールドを正しく前後に送信する新しい形式を変更しようとしましたが、ユーザーに表示したい方法ではありません。srcFormat
Y-m-d
'date'
srcFormat
Y-m-d
私がこれまでに見つけた例のほとんどは、サーバーから画面に情報を取得することのみを扱っています.グリッドのようにY-m-d
表示されているときに日付をサーバーに戻す方法を示す例を教えてもらえますか?m/d/Y
いくつかの場所でこれを強制できると確信していますが、これを実現するための簡単なテクニックがあるはずです。コードが unformatter 関数 (5298 行目) を呼び出すと思っていましたが、これは送信フローの一部として実行されないようです。
これがこの特定のバージョンで見落とした既知の機能である場合に備えて、jqGrid 4.3.0、jQuery-1.6.2、および jquery-ui-1.8.16 を使用しています。私はもともと日付ピッカーでこれをやろうとしていましたが、これはより単純なケースです。この時点を過ぎれば、日付ピッカーの追加は非常に簡単になると思います。