1

我正在使用 Struts 2 应用程序并在 JSP 中显示数据,并且在 JSP<s:iterator>中显示的每条记录都有一个超链接链接。

我想使用此链接并使用 POST 方法将一些数据提交到其他 JSP 页面。

下面是我在 JSP 中的代码片段:

<s:iterator value="#request.Forums">
<s:property value="user_name"/>
<s:form action="displayForum" >
<s:hidden name="id" ></s:hidden>
<s:hidden name="subject" ></s:hidden>
<a  href="javascript:this.form.id"><s:property value="subject"/></a>
</s:form>
</s:iterator>

我已经尝试使用带有 JavaScript 的表单 id 进行此操作,document.forms["formid"].submit但我的迭代器没有给出单个 id,因为它是动态变化的。

注意:我使用<s:url>了 insted of,<s:form>但它会将表单参数值附加到 URL。但我的要求是将表单参数作为隐藏变量发送。

请帮我解决这个问题。

4

3 回答 3

1

<s:form>像这样为你生成唯一的ID

<s:iterator value="#request.Forums" status="stat">
   <s:form id="formid%{#stat.index}" action="displayForum">
       <a href="javascript:submitForm('formid<s:property value="#stat.index"/>')">submit</a>
   </s:form>
</s:iterator>

并将这个 id 传递给你的 javascript 函数。

于 2012-11-22T10:27:04.753 回答
0

我还没有真正理解你的问题,如果你想提交一个表格,你应该使用submit,无论使用什么javascripts:submit但我建议你这样尝试:

<s:iterator value="#request.Forums" var="forum" status="status">
    <s:property value="#forum.user_name"/>
    <s:form action="displayForum" method="POST">
        <s:hidden name="id" value="#forum.id"></s:hidden>
        <s:hidden name="subject" value="#forum.subject"></s:hidden>
        <s:submit value="Submit"/>
    </s:form>
</s:iterator>
于 2012-11-22T16:09:35.010 回答
0

id在您的表格中输入一个:

<s:form id="formid" action="displayForum">
...
</s:form>

在你的表单中,使用 javascript 调用放置一个锚点:

<s:form...>
...
<a href="javascript: submit_my_form();">Submit</a>
</s:form>

然后输入你的javascript代码:

function submit_my_form() {
    document.forms["formid"].submit();
}

编辑:有关更多信息,您可以在 google 中搜索:使用 javascript 提交表单。例如:http ://www.javascript-coder.com/javascript-form/javascript-form-submit.phtml

于 2012-11-22T08:24:11.827 回答