如何使用锚标记将表单值传递给操作?

时间:2013-11-06 18:58:30

标签: javascript forms struts2 struts2-jquery-plugin

我有一个表单,我想将表单的值传递给一个动作。我也不想使用提交按钮,并且想使用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插件顺便说一句。如果需要更多信息,请与我们联系。提前谢谢!

2 个答案:

答案 0 :(得分:0)

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

根据我的说法,一旦你点击锚标签就会调用 href 。 您是否可以删除href并在表单标记中提供操作名称,以便单击将调用js submit

这可能会有所帮助:)

答案 1 :(得分: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>