2013-03-01 30 views
-1

晚上好,怎樣用request.getParameterValues這裏的servlet的內部chk_group輸入的參數是JSP表單:如何獲取servlet中表列的參數?

<form name="MainForm" action="DeleteServlet" method="GET"> 
    <table BORDER=2 BORDERCOLOR=YELLOW width="120px" id="product_table"> 
     <tr> 
      <td></td> 
      <td><b>CarId</b></td> 
      <td><b>Description</b></td> 
      <td><b>Quantity</b></td> 
      <td><b>Price</b></td> 
      <td><b>CC.No</b></td> 
      <td><b>Engine</b></td> 
      <td><b>Cylinder.No</b></td> 
      <td><b>MaxSpeed</b></td> 
      <td><b>PetrolType</b></td> 
      <td><b>PetrolCapacity</b></td> 
     </tr> 
     <c:forEach items="${product_list}" var="car"> 
      <tr> 
       <td><INPUT type="checkbox" name="chk_group" /></td> 
       <td><c:out value="${car.carId}" /></td> 
       <td><c:out value="${car.carDesc}" /></td> 
       <td><c:out value="${car.quantity}" /></td> 
       <td><c:out value="${car.price}" /></td> 
       <td><c:out value="${car.enginCc}" /></td> 
       <td><c:out value="${car.trans}" /></td> 
       <td><c:out value="${car.noOfCylinder}" /></td> 
       <td><c:out value="${car.topSpeed}" /></td> 
       <td><c:out value="${car.fuelType}" /></td> 
       <td><c:out value="${car.fuelCapacity}" /></td> 
      </tr> 
     </c:forEach> 
    </table> 
    </form> 

注:每個複選框我只設定值時,它與相對應的值檢查carId值:

function setCheckBoxValue(tableID) { 
    try { 

     var table = document.getElementById(tableID); 
     var rowCount = table.rows.length; 
     for (var i = 0; i < rowCount; i++) { 
      var row = table.rows[i]; 

      var chkbox = row.cells[0].childNodes[0]; 
      if (null != chkbox && true == chkbox.checked) { 
       var carId = table.rows[i].cells[1].innerHTML; 
       table.rows[i].cells[0].value = carId; 

      } 

     } 

    } catch (e) { 
     alert(e); 
    } 
} 
+0

您的實際做法是一個非常糟糕的主意,你應該使他們當填充複選框值(會有什麼區別呢?)。即使使用這個JavaScript函數,記得在將表單提交給服務器之前執行它。 – 2013-03-01 21:52:52

回答

2

您尚未指定複選框值。提交此表單時,最終會收到一個空字符串作爲檢查值。您需要給複選框賦予一個唯一值,以便您可以唯一標識所選行。對於其他所有HTML輸入元素,複選框值將成爲請求參數值。

例如,汽車ID:

<input type="checkbox" name="chk_group" value="${car.carId}" /> 
+0

編輯完成後,請檢查 – 2013-03-01 16:45:47

+0

我相信你沒有理解我的答案。擺脫那種不尋常的JavaScript方法,並用我的確切''來改變你的''。就這樣。這樣'request.getParameterValues(「chk_group」)'應該返回所需的值。 – BalusC 2013-03-02 00:38:10