2013-04-22 85 views
0

我有一個List(List),我已經在表單中定義了它。我想把這個列表傳遞給jsp。我使用的框架是spring mvc。難點在於我無法填充列表。我知道我必須寫一個foreach語句,但我試過了,沒有發生任何事情。我跟着this的例子,但同樣的情況再次發生。有人有想法嗎?如何使用Spring MVC從表單中獲取列表

+0

我已經寫了相同的代碼,因爲我提供的例子。我現在沒有確切的代碼。我想從jsp中獲取值。這些值位於列表中。 – 2013-04-22 18:38:12

+0

先從更基本的東西開始。您可能沒有將List列入模型。你也應該知道Spring使用一個特殊的'List'來完成多個對象(或者至少在我最後一次使用它的時候)。 – 2013-04-22 19:29:05

+0

我認爲你的意思是lazylist ... – 2013-04-22 19:31:47

回答

-1

你有試過嗎? http://viralpatel-net-tutorials.googlecode.com/files/SpringMVC_Multi_Row.zip

我將這個項目導入到我的STS並運行它,然後我成功地獲得了元素列表。

我使用以下軟件:

  • 的Tomcat 7.0.39
  • STS 3.2.0
  • 的Java 1.7

希望這有助於。

+0

你的鏈接不起作用。更新它,ping我在評論的,我會刪除downvote :) – Nenotlep 2017-03-06 07:19:00

+0

它實際上建議包括一些代碼和解釋什麼是解決方案,如果可能的話。 – Nenotlep 2017-03-06 07:20:18

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--; 
     } 
    }); 

這樣,我不得不每場索引,這樣我就可以很容易地呈現每個錯誤

相關問題