簡體   English   中英

在Apache Wicket的DateField中單擊日期后,立即將其轉發到其他頁面

[英]Immediately forward to other page after a date is clicked in DateField in Apache Wicket

就像在主題中一樣-我想在Apache Wicket的DateField中單擊日期后轉發到其他頁面(類似setResponsePage的按鈕可以使用)。

有什么辦法可以實現? 這是我的DateField:

    final DateField datePublishDateFrom = new DateField("publishDateFromInput", new Model<Date>(Const.DATE)) {

        @Override
        protected DateTextField newDateTextField(String id, PropertyModel dateFieldModel) {
            return DateTextField.forDatePattern(id, dateFieldModel, "yyyy-MM-dd");
        }
    };

    add(datePublishDateFrom);

請閱讀DateTimeField的javadoc:其中包含有關如何使用AjaxFormComponentUpdatingBehavior來對組件進行ajax的一些技巧。

然后,您可以在#onUpdate()中使用#setResponsePage()。

找到解決方案,類似於@svenmeier建議的解決方案。 添加行為就可以了

  final DateField datePublishDateFrom = new DateField("publishDateFromInput", new Model<Date>(Const.DATE)) {

        @Override
    protected DateTextField newDateTextField(String id, PropertyModel dateFieldModel) {
                 DateTextField dateInput =  DateTextField.forDatePattern(id, dateFieldModel, "yyyy-MM-dd");
                dateInput.add(createAjax());
            return dateInput;
        }
    };  



private AjaxFormComponentUpdatingBehavior createAjax() {
    return new AjaxFormComponentUpdatingBehavior("onchange") {
        @Override
        protected void onUpdate(AjaxRequestTarget target) {
            setResponsePage(BasePage.class);
        }
    };
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM