jstl中forEach標籤

先上代碼:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core"   prefix="c"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>購物車列表</title>
    <script type="text/javascript">
    	function deleteitem(id){
	    	var b=window.confirm("真的刪除嗎?");
	    	if(b){
	    		window.location="${pageContext.request.contextPath }/servlet/DeleteItemServlet?id="+id;
	    	} 
    	}


    	function clearcart(){
	    	var b=window.confirm("真的清空嗎?");
	    	if(b){
	    		window.location="${pageContext.request.contextPath }/servlet/ClearCartServlet";
	    	} 
	  	}
	function changeQuantity(input,id,oldvalue){
	  		//alert(input.value);
	  		//檢查數量是不是一個數字,且是正整數
	  		var quantity=input.value;
	  		if(isNaN(quantity)){
	  			alert("請輸入數字");
	  			input.value=oldvalue;
	  			return;
	  		}
	  		if(quantity<0 || quantity!=parseInt(quantity)){
	  			alert("請輸入正整數");
	  			input.value=oldvalue;
	  			return;
	  		}
	  		var b=window.confirm("確定修改嗎?");
	    	if(b){
	    		window.location="${pageContext.request.contextPath }/servlet/ChangeQuantityServlet?id="+id+"&quantity="+quantity;
	    	} 
	  	}
    </script>
  </head>
  
  <body style="text-align:center">
  
  <h1>購物車列表</h1>
  <c:if test="${empty(cart.map)}">
   你沒有購買任何商品
  </c:if>
    <c:if test="${!empty(cart.map)}">     
    <table width="70%" border="1">
    	<tr>
    		<td>書名</td>
    		<td>作者</td>
    		<td>單價</td>
    		<td>數量</td>
    		<td>小計</td>
    		<td>操作</td>
    	</tr>

    		
    	
    	<c:forEach var="entry" items="${cart.map}">
    	<tr>
    		<td>${entry.value.book.name }</td>
    		<td>${entry.value.book.author }</td>
    		<td>${entry.value.book.price }</td>
    		<td>
    		<input type="text" name="quantity" value="${entry.value.quantity }" οnchange="changeQuantity(this,${entry.key},${entry.value.quantity })"/>
    		</td>    	
    		<td>${entry.value.price }</td>    	
    		<td><a href="javascript:void(0);" target="_blank" οnclick="deleteitem(${entry.key});return false;">刪除</a></td>

    	</tr>
 
    	</c:forEach>
  
   	    <tr>
    		<td colspan="3">總價計</td>
    		<td colspan="2">${cart.price}元</td>
    		<td colspan="1">
    		<a href="javascript:void(0);" target="_blank" οnclick="clearcart();return false;">清空購物車</a> 
    		</td>	
    	</tr>
  
    </table>
    </c:if>
  </body>
</html>

83行報錯:Syntax error, insert "}" to complete Block 

將它放到forEach標籤中間,報錯。

將它放到forEach標籤上面,無錯。

給clearcart()方法添加一個參數,無錯。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章