簡體   English   中英

如何在小門中隱藏/顯示yui.calendar.DatePicker

[英]How to hide / show yui.calendar.DatePicker in wicket

我遇到了一個問題,希望你們能幫助我。

我正在使用帶有DatePicker的DateTextField(來自yui.calendar),它們都被添加到WebMarkupContainer中,並且OutputMarkupId和OutputMarkupPlaceholderTag設置為true。

我希望能夠設置容器的可見性,但是當我將容器從true設置為false到true時,datepicker不再可見(我猜想它與HTML(? )),然后我必須重新加載整個頁面(並松動輸入數據),以使DatePicker再次可見。 DateTextField沒有問題。 有什么好的方法可以解決此問題?

JAVA:

invoiceDateFromField = new DateTextField("invoiceDateFromField", new PropertyModel(this, "invoiceDateFrom"), new PatternDateConverter("yyyy-MM-dd", true));
    invoiceDateFromField.setOutputMarkupPlaceholderTag(true);
    invoiceDateFromField.add(new DatePicker());
    containsAllContainer.add(invoiceDateFromField);

AjaxLink onClick:

containsAllContainer.setVisible(!containsAllContainer.isVisible());
target.add(containsAllContainer);//Edit

我試圖從invoiceDateFromField中刪除DatePicker,然后在將容器設置為可見時添加一個新的對象,但這似乎也不起作用。

謝謝!
奧列

在Wicket中將YUI設置為visible = false時,YUI將失去與DOM元素的連接(因為從DOM中刪除了該節點)。 因此,當您將其重新添加到頁面時,YUI日歷的實例在DOM中不再具有任何關聯的字段。 每次使用Wicket重新呈現DateTextField時,都需要確保使用新的Calendar實例更新引用。

暫無
暫無

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

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