如何设置s:来自另一个JSP元素的隐藏值

时间:2013-05-03 10:02:54

标签: java jquery jsp struts2 struts2-jquery

我有以下表格:

<s:form id="storno_form"
    namespace="namespace"
    action="action">

    <sj:submit id="submitId"
        key="btn.show" targets="cancelation_content"
        cssClass="button" validate="true">
    </sj:submit>
</s:form>

表格之外是:

<sj:select
    href="%{getUrl}"
    id="selectCampaign"
    autocomplete="true"
    selectBoxIcon="true"
    key="select.campaign"
    name="campaignId"
    list="campaigns"
    listKey="id"
    listValue="name"
    headerKey="-1"
    headerValue="%{getText('select.headerValue')}"
    onSelectTopics="realod"
    onCompleteTopics="customizeAutoCompleter"
/>

如何使用以下形式提交select元素的值: 我试过了:

<s:form id="storno_form"
    namespace="namespace"
    action="action">
    <s:hidden  value="%{'campaignId'}" name="campaignId" />
    <sj:submit id="submitId"
        key="btn.show" targets="cancelation_content"
        cssClass="button" validate="true">
    </sj:submit>
</s:form>

但它不起作用?

1 个答案:

答案 0 :(得分:3)

您可以使用javascript

执行此操作
onchange="var el=document.getElementById('selectCampaign');document.getElementById('storno_form')['campaignId'].value=el.options[el.selectedIndex].value;"

您可以执行onclick标记<sj:submit事件。

使用jQuery更容易

$(document).ready(function() {
  $('#selectCampagn').change(function() {
   var val = $('#selectCampagn').val();
    $('input[name=campaignId]').val(val);
  });
});