JSP中如何在一个form的table最后加一行,作为计算列?即得出上面个行的数目总和?

解决方案 »

  1.   

    你是想实现EXCEL的计算公式功能吧
    那么你在程序力写好了,然后在那一列把值填上就可以了
      

  2.   

    把所有的值填好,然后触发计算的action,把返回值添入最后一行就可以
      

  3.   

    保存为calculate.jsp,这里我用了下拉列表作为选择,可以选择2到4个数字相加,可以自己修改一下
    --------------------------------
    <%@ page contentType="text/html; charset=GBK" %><html>
    <head>
    <title>
    calculate
    </title>
    <script type="text/javascript">
        function calculateFun()
        {
          var result = parseInt("0");
          for(i = 0 ;i < document.paramInput.length;i++)
          {
             result += parseInt(document.paramInput[i].value);
          }
          document.result.value = result;
        }
    </script>
    </head>
    <body bgcolor="#ffffff">
      <form action="calculate.jsp" method = "POST">
    <div align="center">
    您想计算
    <select name="paramNum">
      <option value="2" selected="selected">2</option>
      <option value="3">3</option>
      <option value="4">4</option>
      </select>位数相加?
      <input type="submit" value="生成表格"/>
      <hr width="50%"/>
      </div>
      </form>
      <% 
        String paramNum = request.getParameter("paramNum"); 
        int num;
        if( paramNum == null) num = 2;
        else
        {
            num = Integer.parseInt(paramNum) ;
        }
        %>
              <div align="center">
        <table border ="1" width="50%">      <%
        for(int i = 0;i < num;i++){
    %>
      <tr>
        <td width="50%">第<%= i+1 %>位加数</td>
        <td width="50%"><input type="text" name="paramInput" /> </td></tr>
    <% } %>
      <tr>
        <td width="50%">结果</td>
        <td width = "50%"><input type="text" name="result"  value="" /></td></tr>
    </table>
    <input type="button" name="calculateButton" onclick="calculateFun();"/>
    </div>
    </body>
    </html>
      

  4.   

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
    <HTML>
    <HEAD>
    <TITLE></TITLE>
    <script>
      function compute() {
    var i = document.getElementsByName("tableRow").length;
    alert(i)
      }
    </script>
    </HEAD><BODY>
      <input type="button" value="检测大小" onclick="compute()">
      <table>
        <tr id="tableRow">
           <td>abc</td>
        </tr>
        <tr id="tableRow">
           <td>abc</td>
        </tr>
        <tr id="tableRow">
           <td>abc</td>
        </tr>
        <tr id="tableRow">
           <td>abc</td>
        </tr>
      </table>
    </BODY>
    </HTML>理论上ID应该是唯一的,不过在你这里,可以作为一个权益之计
      

  5.   

    用JS做每一个TD中用一个隐藏属性的INPUT保存该值,然后在页面结尾处执行一函数,自动计算求和,再赋给最后一行的对应列