jsp页面有个表格
标题分别是:菜名、单价、份数、订购人、总价格
表里有很多条记录。可是有个情况是,我可能选择其中的几条,譬如说我只选择我喜欢的菜。怎么把我选择的保存到数据库。(菜多的话还有分页)

解决方案 »

  1.   

    这一句话可说不清楚对于每条记录,要有一个是否被选中的flg,当然,可以用checkbox实现
    对于选中的每条记录,用hidden将要保存的字段记录下来将flg为选中状态的hidden提交到数据库中思路是这样了,具体的,得看你的程序结构,及实现方式了
      

  2.   

    可以选择多条,那就用复选框checkbox
    选中时把选中的数据保存起来,选择多个时可以用特殊符号分隔
    例如 选中了A和B A;B
    可以把值保存到js变量或者隐藏域中
    页面组装选中的值,后台解析之后保存到数据库
      

  3.   

    请问一下 你分页是怎么实现的?
    如果发生了页面跳转 则可以用隐藏域的方式 把前面页面的复选内容保存 提交时一起写入数据库
    如果用ajax之类的页面转换,只要在选也前把复选的值用js保存 最后一起提交
      

  4.   

    把复选框的value设置为这道菜在数据库中的id,提交的时候获取id号添加到数据库中即可。
      

  5.   

    把你的那些菜名都加上复选框,然后呢把复选框的name都设置成一样的 你选中之后提交表单
    假设你的name的值为food
    在后台呢 使用request.getParameterValues()这个方法获得所有你选中的复选框的id的值
    会保存在一个数组中 就是: String [] str=request.getParameterValues("food");
    遍历数组取出值 调用sql语句就能处理了
      

  6.   

    <form action="BBSControllerServlet" method="post" >
    <input type="hidden" name="action" value="deleteuser"/>
    <c:set var="users" value="${requestScope.users}"/>
    <c:forEach var="user" items="${users}">
    <input type="checkbox" name="users" value=${user.id }>${user.username }<br>
    </c:forEach>
    <input type="submit" value="DELETE" onClick="return confirm('you really want to delete this user?')">
    </form>
    这个是我写的删除用户的前台
      

  7.   

    else if("deleteuser".equals(action)){
    String[] delusers =request.getParameterValues("users");
    List<Integer> userids = new ArrayList<Integer>();

    for(int i=0;i<delusers.length;i++){
    userids.add(Integer.parseInt(delusers[i]));
    }
    new BBS_DAOImpl().doDeleteUser(userids);
    jspPage="/BBSControllerServlet?action=Adminmanager";
    dispatch(jspPage,request,response);
    }
    public void doDeleteUser(List<Integer> userids){
    Connection conn = DBase.getConn();
    for(int i=0 ;i<userids.size();i++){
    DBase.executeUpdate(conn, "delete from user where id="+userids.get(i) );
    }

    }
    后台
      

  8.   

    复选框checkbox 
    勾选时记住ID
    后台接收数组ID  保存