2016-09-24 24 views
0
<c:forEach var="programSlot" items="${programSlot}" varStatus="status"> 
    <tr> 
     <td> 
      <input name ="duration" value="${programSlot.duration}" disabled /> 
     </td> 
     <td> 
      <select name= "programName"> 
       <c:forEach var="radioProgram" items="${rps}"> 
        <c:choose> 
         <c:when test="${radioProgram.name == programSlot.programName}"> 
          <option value="${radioProgram.name}" selected="">${radioProgram.name}</option> 
         </c:when> 
         <c:otherwise> 
          <option value="${radioProgram.name}">${radioProgram.name}</OPTION> 
         </c:otherwise> 
        </c:choose> 
       </c:forEach> 
      </select> 
     </td> 
     <td><input name ="startTime" value="${programSlot.startTime}" /></td> 
     <td> <input name ="dateOfProgram" disabled value="${programSlot.dateOfProgram}" /></td>  
     <td> 
      <input type="submit" value="Submit"/> 

[在附圖中,我展示了我的網頁表單。每行都顯示一個對象的屬性值。如何在請求參數中使用JSTL保存輸入標記/選項標記值,一旦修改完成?

現在我想,如果我改變某個特定行的某個值,並點擊「提交」的值應該保存在請求參數。 (所以,我可以取回我的java文件中設置這些值,並保存在數據庫相同。)

我要做到這一點使用JSTL(或任何其他解決方案是值得歡迎的)1

enter image description here

我也附上了代碼片段。

回答

0

當使用POST提交表單時,會自動添加請求中的參數。 使用標籤的「名稱」屬性從請求中獲取它們。

實施例:

<input name ="startTime" ... 

request.getParameter("startTime"); ... 

request.getParameter("programName"); 

編輯: 移動提交按鈕退出循環。 爲每個元素添加索引。例如:

  <select name= "programName_"${loop.index}> 

迭代像programSlot列表在Java中從請求取回值,並且在對象中設置。 實施例:

request.getParameter("programName_"+i); 

也可以使用,這取決於元素類型request.getParameterValues。

+0

但我需要區分的知道哪些提交按鈕被點擊(如 – Yoda

+0

每行中不同的對象應該更新。該片段展示了只有一個按鈕,所以需要更多的詳細信息。通常情況下,你不會需要多個提交按鈕大多數情況下,如果需要,請參閱:http://stackoverflow.com/questions/2129346/if-an-html-form-has-two-input-type-submit-buttons-how-do-i-know-which -got-c – Stacky

+0

該按鈕處於for循環,因此每行有一個按鈕在那裏 – Yoda