Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Liferay+;JSP+;AlloyUI:按钮作为链接和提交_Java_Jsp_Liferay_Alloy Ui - Fatal编程技术网

Java Liferay+;JSP+;AlloyUI:按钮作为链接和提交

Java Liferay+;JSP+;AlloyUI:按钮作为链接和提交,java,jsp,liferay,alloy-ui,Java,Jsp,Liferay,Alloy Ui,我在JBoss7.1.1上使用Liferay 6.2。 我还使用JSP作为AlloyUI的视图 我想要一个按钮作为MVCPortlet类中方法的链接和值的提交者。 该链接位于java数组中。 传递给java方法的属性位于输入字段中 如果我只使用这两个中的一个就可以了。 我试着把它们结合起来,但没用。 我试过这个: <a href="<%=unread[i][k]%>" target="_blank" > <aui:button type="submit" />

我在JBoss7.1.1上使用Liferay 6.2。 我还使用JSP作为AlloyUI的视图

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

如果我只使用这两个中的一个就可以了。 我试着把它们结合起来,但没用。 我试过这个:

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

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

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


它只是打开google,但不调用该方法。另外,不可能在Javascript中获取Java属性,但我可以从隐藏的输入字段中获取值。但是仍然会有一个问题,那就是它不调用该方法。

我决定继续使用第二个解决方案。 第一个错误是
returnfalse在我的onclick参数中,所以我删除了它。
然后,提交功能将正常工作。
下一个问题是访问javascript onclick方法中的Java变量,因此我使用EL和JSTL使其工作:

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

编写js函数(在点击锚定标签时触发),提交表单是更好的选择。还要使表单和portlet:actionURL部分不在for循环中