可以试试下面这个方法,早前我也是用你这种方法,遇到同样的情况,呵呵,不过解决了,方法如下session.setAttribute("cart",null);

解决方案 »

  1.   

    谢谢,不过这种方法我也试了,还是一样的
    不知道为什么还有用for语句循环也是会出现原来的商品。
      

  2.   

      if(action.equals("delall"))
      {
        
        for (int i=0;i<cart.size();i++)//第一种
         {
         cart.removeElementAt(removeNo);
         
          }
          session.setAttribute("cart",null);//第二种
     session.removeAttribute("cart");//第三种
      }
     <A href="list.jsp?action=delall">清空</a>    //按钮
    就这些
      

  3.   

    从session中先拿到cart, if(action.equals("delall")) 
      { 
         Cart cart = (Cart)session.getAttribute("cart");
         System.out.println(">>>>>>>>>>>>>>>cart.size = " + cart.size);
         
         session.setAttribute("cart",null);
         
      } 
      

  4.   

    if(action.equals("delall")) { Cart cart = (Cart)session.getAttribute("cart"); 
    System.out.println(">>>>>>>1>>>>>>>>cart.size = " + cart.size()); 
    session.setAttribute("cart",null); cart = new Cart();
    System.out.println(">>>>>>>>2>>>>>>>cart.size = " + cart.size()); 
    session.setAttribute("cart",cart);} Cart 是你所对应的购物车的类这样的cart应该是0了
      

  5.   


    cart.size() 这里的cart是没有.size() 方法的,只是演示
      

  6.   

    谢谢,那我的购物车信息放在 Vector buyList=(Vector)session.getAttribute("shoppingcart");这里
    如果照你上面做的话,这些语句应该怎么写,本人比较笨,上面的cart把我搞晕了。
    谢谢你的帮忙!!
      

  7.   


    你用的应该是java.util.Vector是吧if(action.equals("delall"))  {  Vector shoppingcart = (Vector)session.getAttribute("shoppingcart");  
    System.out.println(">>>>>>>第一次输出>>>>>>>>cart.size = " + shoppingcart.size());  
    session.setAttribute("shoppingcart",null);  shoppingcart = new Vector(); 
    System.out.println(">>>>>>>>第二次输出>>>>>>>cart.size = " + shoppingcart.size());  
    session.setAttribute("shoppingcart",shoppingcart); }  请看看后台的信息,如果你购买了再清空,那么,第一次输出的应该是你购买的数量,第二次输出的应该是0了
      

  8.   

    还有一个问题不懂
    <input name="num<%=i%>" size="7" type="text" class="txt_grey" value="<%=goodsitem.number%>" onBlur="check(this.form)">
    这种语句可以写到<% %>这里面吗,可以写的话要怎么写?谢谢了
      

  9.   


    如果上面第二次输出的shoppingcart是0,显然上面的shoppingcart在session里面是清空了是不是,那就要看你的页面是怎么响应(重定向)的了,让你的页面再从session中取得shoppingcart,让它重新遍历一下,想想这种情况下的shoppingcart怎么可能还有对象呢,肯定没有的,也就是空的了,祝你成功
      

  10.   

    <input name="num <%=i%>" size="7" type="text" class="txt_grey" value=" <%=goodsitem.number%>" onBlur="check(this.form)"> 这个写到<%%>是不可取的, 也没有必要啊~