0

artpsMstId変数を JavaScript 関数に渡し、その変数に対して格納されているレコードを更新する次のコードを記述しました。

JSP の場合:

    <td>
     <a href="javascript:fnUpdate('<s:property value="artpsMstId" />');">testupdate</a>
    </td>

<script type="text/javascript">
function fnUpdate(id)
{
    <s:url action='updateServiceDetails'></s:url>
    document.forms[0].artpsMstId.value=id;
    document.forms[0].submit();
}
</script>

struts.xml で:

<action name="updateServiceDetails" class="com.stp.portal.view.SearchServicePortlet" method="updateServiceDetails">
            <result name="success">/WEB-INF/view/ServiceSubmitPage.jsp</result>         
        </action>

で関数を定義しupdateServiceDetailsましたSearchServicePortlet.java。しかし、流れは来ていませんSearchServicePortlet.java。誰かが私を助けることができれば本当に感謝しています...ありがとう

----編集済み-----

これが基本的に私がやりたいことです

<s:form action="updateServiceDetails" method="POST" theme="simple" >
<tr>
    <td>
        FirstName
    </td>
    <td>
        LastName
    </td>
    <td>
        Edit
    </td>
</tr>
<s:iterator value="resultList" >
<tr>
    <td align="center">
        <s:textfield name="firstName" />
    </td>
    <td align="center">
        <s:textfield name="lastName" />
    </td>
    <td>
        Edit
    </td>
    <td align="center">
        <a href="javascript:fnUpdate('<s:property value="artpsMstId" />');">testupdate</a>
    </td>
</tr>
</s:iterator>
</s:form>

上記のコードは、各行の編集オプションを使用して名と姓のリストを表示します。fnUpdate()各行を個別に編集して保存できるように、JavaScriptで関数を呼び出したいと思います。これは私が基本的に行う必要があることです。

4

1 に答える 1

0

テーブル全体にフォームを配置する代わりに、別のフォームを作成し、テーブルの行のリンクをクリックして、javascript 関数を呼び出してその別のフォームを送信します。

以下のコードを jsp で試してください。

<form name="updateServiceDetailForm">
<input type="hidden" name="artpsMstId"/>
</form>
<table>
<tr>
    <td>
        FirstName
    </td>
    <td>
        LastName
    </td>
    <td>
        Edit
    </td>
</tr>
<s:iterator value="resultList" >
<tr>
    <td align="center">
        <s:textfield name="firstName" />
    </td>
    <td align="center">
        <s:textfield name="lastName" />
    </td>
    <td>
        Edit
    </td>
    <td align="center">
        <a href="javascript:fnUpdate('%{artpsMstId}');">testupdate</a>
    </td>
</tr>
</table>

ジャバスクリプトで、

function fnUpdate(artpsMstId) {
    document.forms.updateServiceDetailForm.action = "updateServiceDetails.action";
    document.forms.updateServiceDetailForm.method = "post";
    document.forms.updateServiceDetailForm.artpsMstId.value = artpsMstId;
    document.forms.updateServiceDetailForm.submit();
}
于 2013-06-17T11:52:21.693 に答える