如何获取scriplet值的request.getParameter

时间:2015-07-16 05:29:40

标签: java jsp servlets

我已将按钮的名称设置为<%= j%>,如何通过request.getParameter将此名称传递给servlet ..

    <form action="loop">
    <table>
    <%! List product=new ArrayList(); %>
    <%! List company=new ArrayList(); %>
    <% product=(ArrayList)session.getAttribute("product");
       int j=1;
       int i=0;
       while(i<product.size())
       { %>

       <tr>
           <td>
               Product:<%=product.get(i)%>
          </td>
          <td>
                <button type="submit" name="<%=j%>" value="<%=j%>"/>
                </td>
         <% i++; j++; 
       } %>


            </table>
    </form>

3 个答案:

答案 0 :(得分:-1)

试试这个,可能会对你有帮助。

while(paramNames.hasMoreElements()){
        String paramName=(String) paramNames.nextElement();
         String[] paramValues = request.getParameterValues(paramName);
         for(int i=0; i<paramValues.length; i++) 
         {
             out.println("<li>" + paramValues[i] + "</li>");
         }
    }

答案 1 :(得分:-1)

而不是使用submit,请使用button

<input type="button" name="<%=j%>" value="<%=j%>" onclick='onButtonClick(this.value);'/>

<!-- outside your loop -->
<input type="hidden" id="buttonValue"/>

并使用以下javascript

function onButtonClick(val){
    document.getElementById('buttonValue').value = val;
    document.formId.submit();
}

答案 2 :(得分:-1)

你可以用双向方式做到这一点,

  1. 将其包含在Form标签(您的整个代码)中,并在操作中调用js方法(getButtonName())。
  2. 2.使用JSTL标记并迭代列表。我给你举了一个例子。

    <c:forEach var="product" items="${product}" varStatus="loop">
    <li><a onclick="getButtonName(${loop.index})" href="#">Product:${product}</a></li>