Liferay + JSP + AlloyUI:按钮作为链接并提交

时间:2014-07-30 09:44:01

标签: java jsp liferay alloy-ui

我在JBoss 7.1.1上使用Liferay 6.2。 我也使用JSP作为AlloyUI的视图。

我想要一个按钮作为链接,并作为MVCPortlet类中方法的值的提交者。 该链接位于java数组中。 传递给java方法的属性位于输入字段内。

如果我只使用这两个中的一个,它就有效。 我试图将它们结合起来,但它不起作用。 我试过这个:

<a href="<%=unread[i][k]%>" target="_blank" >
<aui:button type="submit" />
</a>

它调用方法,但它不会在我的浏览器中打开新选项卡。在我的浏览器中,我可以看到它是一个链接,如果我点击它 - >&gt;新选项卡,它在新选项卡中正确打开它。但是,如果我只是点击按钮就不行了。 第二种方式:

<aui:button type="submit" onclick="window.open('http://www.google.de', '_blank', ''); return false;"/>

它只是打开谷歌但没有调用该方法。此外,无法在Javascript中获取Java属性,但我可以从隐藏的输入字段中获取值。但是仍然存在它没有调用该方法的问题。

1 个答案:

答案 0 :(得分:0)

我决定继续使用第二种解决方案。 我的onclick参数中的第一个错误是return false;,所以我删除了它。 然后提交功能照常工作。 接下来的问题是在javascript onclick方法中访问一个Java变量,所以我用EL和JSTL来实现它:

<c:set var="url" scope="session" value="<%=unread[i][k]%>"/>
<aui:button type="submit" onclick="window.open('${url}', '_blank', '');" />