1

我有一个表单,我想将表单的值传递给一个动作。我也不想使用提交按钮,而是想使用 struts2 锚标记。这是我的以下代码:

 <s:form id="form" theme="xhtml" >                  
        <sj:datepicker id="startDate" name="startDate" label="Start Date" required="true"/>       
                                    <sj:datepicker id="endDate" name="endDate" label="End Date" required="true" /> 

    </s:form> 
    <s:url action="excelExport" id="excelurl" > 
    </s:url>
    <s:a formId="form" href="%{excelurl}" onclick="document.forms['form'].submit();" >Export</s:a>

这里的问题是开始日期和结束日期没有传递给操作。有人可以建议如何将表单值传递给操作。我正在使用 struts2 jquery 插件顺便说一句。如果需要更多信息,请告诉我。提前致谢!

4

2 回答 2

0
href="%{excelurl}" onclick="document.forms['form'].submit(); 

根据我的说法,一旦你点击锚标签, href就会被调用。能否去掉href并在form标签中提供动作名称,这样点击就会调用js提交

这可能会有所帮助:)

于 2013-11-07T05:49:08.147 回答
0

我能够使用 javascript 来获取表单值,然后使用表单值动态创建 url。有点hacky,但它有效。让我知道是否有人有更优雅的解决方案。

<s:a id="exportLink" href="%{excelurl}" onclick="document.getElementById   ('exportLink').href=(document.getElementById('exportLink').href + 'startDate=' + document.getElementById('startDate').value + '&endDate=' + document.getElementById('endDate').value ;alert(document.getElementById('exportLink').href);">Export Current View to Excel</s:a>
于 2013-11-07T19:59:39.230 回答