2

私は次のフォームを持っています:

<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>

しかし、それは機能していませんか?

4

1 に答える 1

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);
  });
});
于 2013-05-03T10:49:45.293 に答える