JQuery UI DatePicker を作成して、無効な日付を含む任意の文字列に日付を設定できるようにする方法を探しています。この日付が間違った形式であった場合に備えて、ユーザーが手動で入力する日付を変更する機会をユーザーに与えるためにこれが必要です
手順:
- ユーザーが手動で誤った日付を入力した
28/13/2012
(日付形式はdd/mm/yy
、月 13 は無効) - ユーザーがフォームを検証する
- struts2 は同じフォームをメッセージ付きで再度表示します
予期される:ページの再表示で、フィールドが入力され、28/13/2012
「日付形式が正しくありません」というメッセージが表示される
実際:フィールドが空になる
ユーザーが以前の誤った値を取得した方がよいのではない28/13/2012
でしょうか? どうすればこれを達成できますか?
ありがとう
添加:
JSP コード:
<s:textfield name="fromDate" cssClass="datePicker" theme="simple"/>
<s:textfield name="toDate" cssClass="datePicker" theme="simple"/>
JS コード:
$(document).ready(function(){
$('input.datePicker').datepicker({
autoSize: true,
dateFormat: '<s:text name="date.datePicker.dateFormat"/>',
showOtherMonths: true,
selectOtherMonths: true,
changeMonth: true,
changeYear: true,
numberOfMonths: 3,
dayNamesMin: '<s:text name="date.datePicker.dayNamesMin"/>',
monthNamesShort: '<s:text name="date.datePicker.monthNamesShort"/>'
});
// Gestion du la dépendance entre date de début et de fin
$('input[name="fromDate"]').datepicker( "option", "onClose", function( selectedDate ) {
$( 'input[name="toDate"]' ).datepicker( "option", "minDate", selectedDate );
});
$('input[name="toDate"]').datepicker( "option", "onClose", function( selectedDate ) {
$( 'input[name="fromDate"]' ).datepicker( "option", "maxDate", selectedDate );
});
});
Java コード (Action クラス):
private String toDate;
private String fromDate;
// + getters and setters