首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SmartGWT DateChooser禁用特定日期

SmartGWT DateChooser禁用特定日期
EN

Stack Overflow用户
提问于 2014-06-26 19:52:22
回答 1查看 719关注 0票数 2

我需要在SmartGWT DateChooser中禁用(或设置为红色)特定日期。我正在尝试使用setDisabledDates(日期...disabledDates)并使用setDisabledWeeenddayStyle更改cssStyle,但这不起作用。你知道我该怎么做吗?

代码语言:javascript
复制
public class CustomDateItem extends DateItem {

    private DateChooser chooser = new DateChooser();

    public CustomDateItem() {
        this("", "");
    }

    public CustomDateItem(String name, String title) {
        super(name, title);
        onInit();
    }

    private void onInit() {
        Date date = new Date(2014, 06, 27);
        chooser.setDisabledDates(date);
        setPickerProperties(chooser);
    }
}

这是我的DateItem.java。但是,如果我尝试这样的操作:

代码语言:javascript
复制
public class CustomDateItem extends DateItem {

    public CustomDateItem() {
        this("", "");
    }

    public CustomDateItem(String name, String title) {
        super(name, title);
        onInit();
    }

    private void onInit() {
        Date date = new Date(2014, 06, 27);
        System.out.println(date);
        getPickerProperties().setDisabledDates(date);
    }
}

我收到js错误:

代码语言:javascript
复制
com.google.gwt.core.client.JavaScriptException: (TypeError) @com.smartgwt.client.util.JSOHelper::setAttribute(Lcom/google/gwt/core/client/JavaScriptObject;Ljava/lang/String;Lcom/google/gwt/core/client/JavaScriptObject;)([null, string: 'disabledDates', JavaScript object(341)]): elem is null

但是正如您所看到的,“DateChooser”不是空的,并且getPickerProperties()会创建自己的日期。

EN

回答 1

Stack Overflow用户

发布于 2014-06-27 22:44:13

好了,解决了。日期必须像这样声明:

代码语言:javascript
复制
Calendar cal1 = new GregorianCalendar(2014, 05, 26);

所有的代码都应该是这样的:

代码语言:javascript
复制
public class DateItem extends com.smartgwt.client.widgets.form.fields.DateItem {

    private DateChooser chooser = new DateChooser();

    public DateItem(String name, String title) {
        super(name, title);
        onInit();
    }

    private void onInit() {
        Calendar cal1 = new GregorianCalendar(2014, 05, 26);
        Date[] dates = new Date[]{cal1.getTime()};
        chooser.setDisabledDates(dates);
        chooser.setDisabledWeekdayStyle("holidays");
        chooser.setDisabledWeekendStyle("holidays");
        setPickerProperties(chooser);
    }
}

希望它能帮助到一些人。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24429806

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档