0

ウィジェットアプリケーションのDateTimeField要素をブートストラップDatetimepickerに変換しようとしています。私はWicketフレームワークが初めてです。Wickets DateTimeField要素をブートストラップdatetimepickerに変換する

HTML:

<span wicket:id="dateValue" style="width:400px">Date editor</span> 
<script type="text/javascript"> 
    jQuery(function() { 
     var idDate = jQuery('[name*="dateValue"]').attr('id'); 
     console.log("idDate:"+idDate); 
     jQuery('#' +idDate).datetimepicker(
      { 
       useCurrent: false, 
       collapse: true 
      } 
     ); 
    }); 
</script> 

のJava:

private final DateTimeField valueDatePicker; 
valueDatePicker = addValueDatePicker(this, "dateValue", new Model<Date>()); 

private DateTimeField addValueDatePicker(final MarkupContainer parent, final String id, final IModel<Date> model) 
{ 
    final DateTimeField result = new DateTimeField(id, model) { 
     private static final long serialVersionUID = 1L; 

     /** {@inheritDoc} */ 
     @Override 
     protected void onConfigure() 
     { 
      boolean required = true; 
      setVisibilityAllowed(required); 
      setRequired(required); 
     } 

     @Override 
     protected boolean use12HourFormat() 
     { 
      return false; 
     } 

     /** {@inheritDoc} */ 
     @Override 
     protected DateTextField newDateTextField(final String id, final PropertyModel<Date> dateFieldModel) 
     { 
      return DateTextField.forDatePattern(id, model, BooleanUtils.isFalse(TimeZoneUtility 
        .getUSDateFormatConfig()) ? DateUtility.DATE_NON_US_FORMAT : DateUtility.DATE_FORMAT); 
     } 
    }; 
    result.setOutputMarkupId(true); 
    parent.add(result); 
    return result; 
} 

それは部分的にしか動作しますが、。つまり、DateTimeFieldには、現在のブートストラップmultiselect calerndarが表示されている日付フィールドのテキストボックスが表示されますが、カレンダー、時間、および分のテキストボックスが表示されます。私は、カレンダー、時と分のテキストボックスを取り除き、日付フィールドのテキストボックスのみを表示したいと考えました。

+0

datetimepickerコンポーネントを使用して時間と分なしで日付部分を取得したいですか?この場合、 '' MM/DD/YYYY''オプションを追加してください。docsの['format'](http://eonasdan.github.io/bootstrap-datetimepicker/Options/#format)と[moment formats] (http://momentjs.com/docs/#/displaying/format/) – VincenzoC

+0

Thq @ VincenzoC。ブートストラップマルチセレクション用のフォーマットです。私は日付のテキスト、カレンダー、時間と分のフィールドが満載のWicket DateTimeFieldコンポーネントについて話しています。 – ChilBud

答えて

1

DateTimeFieldの代わりにDateTextFieldを使用してみましたか?このようにして、たとえばdd/MM/yyyyのフィールドを1つ指定することができます。 例hereを見ると、JQueryカレンダーでカスタムDateTextFieldの例を見ることができます。

+0

はい@Andrea Del Bene。 DateTextFieldを使用すると、テキストフィールドとカレンダーの両方が一緒に与えられます。私はカレンダーを取り除きたいので、プレーンテキストボックスを選択し、その上にブートストラップdatepicker JS関数を呼び出します。 – ChilBud

1
+0

ありがとうございますmartin-g。実装してお知らせします。私は自分のプロジェクトでDateTimeFieldを使用したコードに適応しようとしています。今私はそれをTextFieldに置き換えました。いくつかのモデルは私の日付コンポーネントにも関連付けられています。 – ChilBud

関連する問題