首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >打开新窗口中的primefaces标签云链接

打开新窗口中的primefaces标签云链接
EN

Stack Overflow用户
提问于 2014-06-10 04:58:01
回答 1查看 329关注 0票数 1

我在使用primefaces标签云。但是当我点击标签云上的链接时,它会在同一个window.But中打开,点击它应该在一个新窗口中打开的标签云链接,而不是在同一个窗口上。当我点击标签云链接时,我想要一个新的窗口打开。有人能帮我一下这个话题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-10 06:00:33

JavaScript解决方案:

一种可能的方法是JavaScript:

代码语言:javascript
复制
<p:tagCloud model="#{tagCloudBean.model}" onclick="preventDefault(event)">
    <p:ajax event="select" update="msg" listener="#{tagCloudBean.onSelect}" />
</p:tagCloud>

onclick触发一个阻止打开链接的JavaScript函数。

代码语言:javascript
复制
function preventDefault(e) {
   e.preventDefault();
}

此外,通过添加ajax事件,可以在托管bean中调用侦听器。

代码语言:javascript
复制
public void onSelect(SelectEvent event) {
    TagCloudItem item = (TagCloudItem) event.getObject();
    String url = item.getUrl();
    String script = "window.open('" + url + "');"
    RequestContext.getCurrentInstance().execute(script);
}

在那里,您可以访问TagCloudItem的url并执行一条JavaScript语句,该语句应该打开一个新的浏览器窗口。

这个可能的解决方案是未经测试的,但只要尝试一下就行了。

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

https://stackoverflow.com/questions/24133140

复制
相关文章

相似问题

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