对啊,这是html啊,
<a href="purchase.jsp? prodcuts=<%=products.get(i)%>&submit=remove">Remove</a>
中,除了<%=products.get(i)%>外,其他的都是html。
<%=products.get(i)%>用于在服务器端产生一个值啊,比如3,最终就是:
<a href="purchase.jsp? prodcuts=3&submit=remove">Remove</a>
<a href="purchase.jsp? prodcuts=<%=products.get(i)%>&submit=remove">Remove</a>
中,除了<%=products.get(i)%>外,其他的都是html。
<%=products.get(i)%>用于在服务器端产生一个值啊,比如3,最终就是:
<a href="purchase.jsp? prodcuts=3&submit=remove">Remove</a>
关键是<a href="purchase.jsp? prodcuts=3&submit=remove">Remove</a>中
"purchase.jsp? prodcuts=3&submit=remove"是什么意思?
点击超级链接"Remove"后进入purchase.jsp页面,那 prodcuts=3&submit=remove是什么用法?
我把&和submit中间加入一个空格,运行结果又不一样。
程序运行后也不对,点击remove后,对应的栏删不掉。
真是郁闷啊,明早来再把程序看一遍。去跑步锻炼了。谁有时间的话能不能麻烦帮我看一下源程序:
purchase.jsp<%@ page import="java.util.Vector" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>Shopping Cart Example</title>
</head><body>
<center>
<form type="post" action="purchase.jsp">
<h1>Shopping Cart Example</h1>
<br>
<select name="product">
<option>Beginning java2 by Ivor</option>
<option>Professional java programming by Brett</option>
<option>Professional jsp by Sing Li</option>
</select>
<input type="submit" name="submit" value="add">
</from>
<!--Here goes the shopping cart display-->
<%
String submit=request.getParameter("submit");
if(submit!=null){
%>
<hr>
<h2 align="center">Your Shopping Cart</h2>
<p>
<jsp:useBean id="cart" scope="session"
class="jw.sessions.ShoppingCart"/>
<jsp:setProperty name="cart" property="*"/>
<%
cart.processRequest(request);
%>
<table width="75%" align="center" border="1">
<%
Vector products=cart.getProducts();
for(int i=0;i<products.size();i++){
%>
<tr>
<td><%=products.get(i)%></td>
<td><a href="purchase.jsp? prodcuts=<%=products.get(i)%> & submit=remove">Remove</a>
</td>
</tr>
<%
}
if(products.size()==0){
%>
<tr><td>Your cart is currently empty</td></tr>
<%
}
%>
</table>
<%
}
%>
</center>
</body>
</html>
// ShoppingCart.java
package jw.sessions;
import java.util.Vector;
import javax.servlet.http.HttpServletRequest;public class ShoppingCart{
private Vector cart=null;
String product=null;
String submit=null;
public ShoppingCart(){
cart=new Vector();
}
public void setProduct(String product){
this.product=product;
}
public void setSubmit(String submit){
this.submit=submit;
}
public Vector getProducts(){
return cart;
}
public void addProduct(String product){
cart.add(product);
}
public void removeProduct(String product){
cart.remove(product);
}
public void processRequest(HttpServletRequest req){
if(submit!=null){
if(submit.equals("add")){
addProduct(product);
}
else{
removeProduct(product);
}
reset();
}
}
public void reset(){
submit=null;
product=null;
}
}
<%
String prodcuts= request.getParameter("prodcuts");
String submit= request.getParameter("submit");
%>
得到前一页的值