首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在GWTBootstrap中刷新/更新Popover?

如何在GWTBootstrap中刷新/更新Popover?
EN

Stack Overflow用户
提问于 2015-09-18 00:58:54
回答 3查看 379关注 0票数 1

我使用GWTBootstrap3 v0.9.1。

我想要显示一个内容存储在数据库中的波波夫。因此,当用户第一次悬停一个元素时,就会显示带有Please wait...信息的Popover。同时,我从数据库中获得适当的文本,并希望用新的内容替换Popover的内容。

我认为这段代码能起作用:

代码语言:javascript
复制
popover.setContent(newText);
popover.reconfigure();

但是它不起作用:弹出窗口消失了,不再显示了。

我知道有用于引导用户的解决方案,但是当我使用GWT-Bootstrap时,我想在不使用jQuery的情况下在GWT中这样做。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-09-25 08:25:19

我遵循@Knarf的建议,使用本机方法,因为我找不到纯GWT解决方案:

代码语言:javascript
复制
private native void updatePopover(Element element, String popoverHtml, boolean shown) /*-{
    var $popover = $wnd.jQuery(element);
    $popover.data('bs.popover').options.content = popoverHtml;
    if(shown)
        $popover.popover('show');
}-*/;

其中:

  • element是popover小部件的元素(具有popover的元素)
  • popoverHtml是新的内容
  • shown指示更新过程中是否可见弹出。

我通过ShowHandler和HideHandler跟踪可见状态:

代码语言:javascript
复制
uiPopover.addShowHandler(new ShowHandler() {
    @Override
    public void onShow(ShowEvent event) {
        popoverVisible = true;
    }
});
uiPopover.addHideHandler(new HideHandler() {
    @Override
    public void onHide(HideEvent event) {
        popoverVisible = false;
    }
});

编辑:最好使用ShowHandler和HideHandler,而不是ShownHandler和HiddenHandler。

票数 1
EN

Stack Overflow用户

发布于 2015-09-18 07:22:39

在这种情况下,我只需要编写本地javascript方法就可以实现jquery。

更好的是,我在库本身中更改它,并执行一个拉请求,以便将其合并到主回购中。

我在过去为GWT-Bootstrap3做了类似的事情,它很快就被合并到了主回购中。

票数 2
EN

Stack Overflow用户

发布于 2015-12-23 10:28:12

这个问题已经得到了回答,但是有一个GWT的工作。当isAnimated属性为true时,重新配置方法不能很好地工作。只需在初始化时关闭它。

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

https://stackoverflow.com/questions/32642268

复制
相关文章

相似问题

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