我有一个导出表单,我可以从2个立方体导出数据。在表单提交之前,我想在隐藏字段中设置要导出的多维数据集的名称,但它在操作中始终保持为空。在javascript函数中,我添加了一个警告,用于显示隐藏文件的值,这很好。但是在行动中它是空值。
JSP文件:
<%@ taglib prefix="s" uri="/struts-tags"%>
<%@ taglib prefix="sx" uri="/struts-dojo-tags"%>
<link rel="stylesheet"
href="<s:url value="/css/jquery.multiselect.css"/>" type="text/css" />
<link rel="stylesheet"
href="<s:url value="/css/jquery.multiselect.filter.css"/>"
type="text/css" />
<link rel="stylesheet"
href="<s:url value="/css/themes/base/jquery.ui.theme.css"/>"
type="text/css" />
<script type="text/javascript"
src="<s:url value="/js/jquery-1.9.1.min.js" />"></script>
<script type="text/javascript"
src="<s:url value="/js/jquery-ui.min.js" />"></script>
<script type="text/javascript"
src="<s:url value="/js/jquery.multiselect.min.js" />"></script>
<script type="text/javascript"
src="<s:url value="/js/jquery.multiselect.filter.js" />"></script>
<script language="javascript">
function selectionCube(cubeSelected) {
document.getElementById('cubeType').value = cubeSelected;
document.getElementById('exportFormStep1').submit();
}
</script>
<s:form id="exportFormStep1"
action="exportPdfValidationPerimeterReport.do" name="exportStep1Form"
theme="simple">
<s:hidden id="cubeType" name="%{cubeSelected}"></s:hidden>
<div class="contentTable">
<div class="bloc_action">
<input class="btn_action_right" type="button"
onclick="selectionCube('CUBE_1');"
value="Cube 1" />
<input class="btn_action_right" type="button"
onclick="selectionCube('CUBE_2');"
value="Cube 2" />
</div>
</div>
</s:form>
答案 0 :(得分:1)
为什么在设置隐藏字段的名称时使用OGNL
表达式?现在,此隐藏字段的名称是cubeSelected
字段的值。
其名称应设置为明确:
<s:hidden id="cubeType" name="cubeSelected"/>