【问题标题】:How Can I solve my DateTextField problem?如何解决我的 DateTextField 问题?
【发布时间】:2021-02-24 14:32:00
【问题描述】:

我使用的是 wicket 1.5.7 版本。当我尝试在我的第一个页面中设置 DateTextField 组件时,它将在同一个主类中使用 AjaxSubmitLink 的 onError 方法,但在另一个审批选项卡页面中。当我将 dateTextField 区域设置为 null 时,它工作成功。
这个java类

private DateTextField montajTarihiCombobox;
private AjaxFallbackLink sorguSubmit;
private WebMarkupContainer montajEndDatePickerContainer;

TimeChangePageClass  extends FormSekme {
 ...
  dateCombobox = new DateTextField("datePicker", new PropertyModel<Date>(model, "conversionTime"), "dd/MM/yyyy HH:mm:ss");
  montajTarihiCombobox.setOutputMarkupId(true);
   
 
  datePickerContainer = new WebMarkupContainer("datePickerContainer");
  datePickerContainer .setOutputMarkupId(true);
  datePickerContainer .add(dateCombobox );
....
}

这是 HTML

            <td>
                <div wicket:id="datePickerContainer" style="clear: both;">
                    <label style="margin-bottom: 5px;">Conversion Time</label>
                    <input wicket:id="datePicker" maxlength="26"
                           class="datetimepicker large" style="width: 120px; float: none; margin-bottom: 5px !important;" type="text" />
                </div>
            </td>

这是我的模型类

public class ModelClass implements Serializable {

private Date conversionTime;

...// getter and setter methods. 

}

这是onError方法自带的审批页面。

        stepContent.add(approvalButton = new AjaxSubmitLink("approvalButton ") {
        ....

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
        ..............
            }
        }

        @Override
        protected void onError(AjaxRequestTarget target, Form<?> form) {
            // THE CODE İS COMING HERE 
        }
       
      }

【问题讨论】:

    标签: java ajax wicket


    【解决方案1】:

    在您的页面中使用 FeedbackPanel 并在 onError() 中重新绘制它:

    @Override
    protected void onError(AjaxRequestTarget target, Form<?> form) {
      target.add(feedbackPanel);
    }
    

    这样,Wicket 将首先打印导致 onError() 被调用的错误。很可能输入的日期(字符串)无法转换为 java.util.Date。

    【讨论】:

      猜你喜欢
      • 2020-10-21
      • 2021-03-02
      • 1970-01-01
      • 2021-08-19
      • 1970-01-01
      • 1970-01-01
      • 2022-06-14
      • 2019-05-25
      • 2021-05-22
      相关资源
      最近更新 更多