0

フォームで定義したリスト (リスト) があります。このリストをjspに渡したいです。私が使用するフレームワークは spring mvc です。これの難しい部分は、リストにデータを入力できないことです。foreach ステートメントを作成する必要があることはわかっていますが、試してみましたが、何も起こりませんでした。私はこの例に従いましたが、同じことが再び起こりました。誰にもアイデアはありますか?

4

2 に答える 2

0

私の問題を解決してくれてありがとう。私は最終的に解決策を見つけました。私が書いたフォームで@Valid private SubmitAEActivityForm[] person;次に、私が欲しかったフィールドを含むクラスを書きました。その後、私のJSPで次のように書きました:

c:forEach items="${submitAEForm.aifs}" var="holdData"
                                varStatus="loop">
                                <c:set var="indexLoop" value="${loop.index}" scope="request" />
                                <c:set var="items" value="${holdData}" scope="request" />
                                <c:import url="/WEB-INF/jsp/common/prototype.jsp"></c:import>

                            </c:forEach> <c:remove var="items" />

複製したいフィールドがprototype.jspに含まれていました。私のjQueryコードは次のとおりです。

function initDivList(addBtn, removeBtn, hiddenDivId, displayDivId) {
    var i = 0;
    $(addBtn).click(function() {
        $(hiddenDivId).clone().find('input, select').each(function() {
            $(this).attr({
                'name': function(_, name) { return name.replace("$NAME$", i); }
              }); }).end().fadeIn(1000).appendTo(displayDivId).css("display", "block");

        $(removeBtn).click(function() {
            $(this).parent().remove();
        });
        i++;
    });
     $(removeBtn).click(function() {
        $(this).parent().remove();
        if (i > 1) {
            i--;
        }
    }); 

このようにして、各フィールドにインデックスを付けたので、各エラーを簡単にレンダリングできました

于 2013-04-24T17:48:41.370 に答える