首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GWT2.7和GWT 1.5.3 DatePicker

GWT2.7和GWT 1.5.3 DatePicker
EN

Stack Overflow用户
提问于 2017-07-19 17:45:11
回答 1查看 127关注 0票数 0

使用MaterialButton,我试图在屏幕上显示日历窗格。我的代码是这样的:

代码语言:javascript
复制
    @UiField
    MaterialDatePicker editDateCtrl;
    @UiField
    MaterialButton addDateCtrl;

    @UiHandler("addDateCtrl")
    void onClick(ClickEvent ev) {
//      GQuery.console.log(GQuery.$(ev.getSource()).siblings(".input-field"));
//      GQuery.$(ev.getSource()).siblings(".input-field").first().find("input").click();
//      GQuery.$(this.editDateCtrl.getElement());
//      GQuery.$("#gwt-debug-actionBtn").click();
        editDateCtrl.fireEvent(new FocusEvent() {});
    }

我尝试使用焦点事件,单击事件,但什么都不起作用。使用普通JavaScript (jQuery)获取元素并调用obj.click()/obj.focus()也不会产生任何结果。这个控件的API甚至不包含方法show()或类似的东西(不是在我当前使用的版本中)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-19 21:10:52

我不得不使用GQuery/JSNI。MaterialDatePicker包含一个input元素,该元素的属性aria-owns由我想要显示的日历弹出窗口的id赋值。为了使弹出窗口出现,你需要给它添加一些样式。

代码如下:

代码语言:javascript
复制
String pickerId = GQuery.$(editDateCtrl).find("input").attr("aria-owns");
GQuery.$("#" + pickerId).addClass("picker--focused picker--opened");
GQuery.$("#" + pickerId).attr("aria-hidden", false);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45186821

复制
相关文章

相似问题

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