如何将输入文本值作为 portlet 参数传递
How to pass input text value as portlet param
我有一个 portlet 页面:
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>
<portlet:defineObjects />
<portlet:resourceURL var="resourceUrl">
<portlet:param name="startDate" value="" />
</portlet:resourceURL>
<input id="startdateexportaging" type="text" />
<a style="font-size: 15px;" href="${resourceUrl}" >URL</a>
如何在单击 resourceUrl
和 link 时将 startdateexportaging
的内容作为 portlet 参数 startDate
传递?
单击 link 后,您可以使用 onclick
处理程序将内容添加到 URL。但这会很麻烦,容易出错并且没有必要。
相反,您应该将 input
添加到 form
并将 URL 定义为操作参数:
<aui:form action="<%= resourceUrl.toString() %>" method="get">
<aui:input name="startDate" type="text" />
<aui:button value="Download" type="submit" />
</aui:form>
(如果您不使用 AUI - 您也可以使用简单的 HTML 标签)
此解决方案的另一个优点:按钮而不是 link 使用户更容易理解文本字段中的内容已提交。将它与 SO 上 links 和按钮的使用进行比较 - 如果您输入一些信息,您必须点击一个按钮。
并且搜索引擎更容易解析网站,因为那些尝试遵循 links - 但忽略按钮。
我有一个 portlet 页面:
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>
<portlet:defineObjects />
<portlet:resourceURL var="resourceUrl">
<portlet:param name="startDate" value="" />
</portlet:resourceURL>
<input id="startdateexportaging" type="text" />
<a style="font-size: 15px;" href="${resourceUrl}" >URL</a>
如何在单击 resourceUrl
和 link 时将 startdateexportaging
的内容作为 portlet 参数 startDate
传递?
单击 link 后,您可以使用 onclick
处理程序将内容添加到 URL。但这会很麻烦,容易出错并且没有必要。
相反,您应该将 input
添加到 form
并将 URL 定义为操作参数:
<aui:form action="<%= resourceUrl.toString() %>" method="get">
<aui:input name="startDate" type="text" />
<aui:button value="Download" type="submit" />
</aui:form>
(如果您不使用 AUI - 您也可以使用简单的 HTML 标签)
此解决方案的另一个优点:按钮而不是 link 使用户更容易理解文本字段中的内容已提交。将它与 SO 上 links 和按钮的使用进行比较 - 如果您输入一些信息,您必须点击一个按钮。
并且搜索引擎更容易解析网站,因为那些尝试遵循 links - 但忽略按钮。