请看看我的这段JSP的ShoppingCart的代码,帮帮我实现一个功能。

Abyss 2000-08-15 09:22:00
我的代码如下:
<%@ page import="java.sql.*"%>
<%@ page import="java.io.*"%>
<jsp:useBean id="mydb" class="dbaction.dbbean" scope="session"/>
<jsp:useBean id="mycarts" class="dbaction.cartCollection" scope="session"/>

<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<HTML>
<head>
<title>ShoppingCart</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<LINK REL=stylesheet HREF="css.css" TYPE="text/css">
</head>

<BODY bgcolor="#FFFFFF" TOPMARGIN="0" LEFTMARGIN="0" MARGINWIDTH="0" MARGINHEIGHT="0" vlink="#666666" >
<p>Your ShoppingCart:</p>
<table width="100%" border="0" cellpadding="2" cellspacing="2">
<form METHOD="POST" ACTION="order.jsp" id="form1" name="form1">
<tr>
<td align="center" width="40" bgcolor="#60ACC8">PRODUCTID</td>
<td align="center" width="40" bgcolor="#60ACC8">PRODUCTNAME</td>
<td align="center" width="60" bgcolor="#60ACC8">PRICE</td>
<td align="center" width="60" bgcolor="#60ACC8">QUANTY</td>
<td align="center" width="60" bgcolor="#60ACC8">AMOUNT</td>
<td align="center" width="60" bgcolor="#60ACC8">DEL?</td>
<td align="center" width="71"> </td>
</tr>
<%String productid=request.getParameter("productid");
if(productid!=null)
{
String productname=null;
int productprice=0;
String command=null;
ResultSet rest=null;
try{
command="select * from system.product where productid='"+productid+"'";
rest=mydb.getResultSet(command);
rest.next();
productname=rest.getString(2);
productprice=rest.getInt(3);
mycarts.AddItem(productid,productname,productprice,1);
}catch(SQLException e){
String myerr=""+e;
mydb.displayerror(response,myerr);
}finally{
if(rest!=null)rest.close();
}
}
if (mycarts.GetItemCount()==0)
{
%>
<tr> <td><center>No Items.</center></td/tr>
<TR BGCOLOR="#F9EAC1">
<TD><%=mycarts.GetId(i)%></TD>
<TD><%=mycarts.GetName(i)%></TD>
<TD><%=mycarts.GetPrice(i)%></TD>
<TD><input type="text" size=5 maxlength=15 name="quanty" value="1"></TD>
<TD><input type="text" size=5 maxlength=20 name="amount" value="<%=qX*pY%>"></TD>
<td><a href="clearcart.jsp?productid="<%=mycarts.GetId(i).replace(' ','+')%>>
Remove</a></td>
</TR>
<% }
}
%>
</form></table>
<tr><td>
<form method="POST" action="clearcart.jsp" id="form3" name="form3">
<input TYPE=submit VALUE="Clear My Cart" name="button2">
</form>
</td><td>
<form method="POST" action="orderform.jsp" id="form1" name="form1">
<input TYPE=SUBMIT VALUE="Order Online" name="button3">
</form>
</td><td>
<form method="post" action="shoppingmain.jsp">
<input TYPE=submit value="Continue Shopping" name="button">
</form>
</td><td>
<form>
<input TYPE=submit value="Update Quantity" name="button4">
</form>
</td>
</tr>
</table></center>
</BODY></HTML>
我想实现的功能是:将ProductPrice和Quanty的值POST或GET给BUTTON4“Update Quantity”,在后台将Price*Quanty,所得的值显示在AMOUNT中。其实这是个比较简单的问题,但由于我初学JSP,应该说我以前只做过VB,所以有很多不懂,希望大家指教我。
请在我的源程序上修改添加,在帮我检查一下程序的错误。谢谢各位了。我的JSP开发环境是JDeveloper 3.1。
...全文
129 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
Abyss 2000-08-16
  • 打赏
  • 举报
回复
谢谢,非常感谢!
leslielu 2000-08-16
  • 打赏
  • 举报
回复
用我上面的那个FORM替换你最后的那个FORM
另外action属性指向自己的这个页面——就是告诉你只用一个页面做。
onsubmit()函数中你要用 你最后这个FORM的名字来标记他里面的元素,而用上面另外一个标记另外的元素。然后类似的一句 document.lastform.quanty.value=document.otherform.quanty.value; 给他赋值。
这是提交最后的表单会提交到自己,然后你当然要写对应的代码处理他的提交。
Abyss 2000-08-16
  • 打赏
  • 举报
回复
能无能在详细点,我的<input TYPE=hidden value="1" name="quanty">
<input TYPE=hidden value="<%=mycarts.GetPrice(i)%>" name="price">
和<input TYPE=submit value="Update Quantity" name="button4">是在两个<form>里啊,而且我是要在同个页面实现,不是两个页面。
leslielu 2000-08-16
  • 打赏
  • 举报
回复
在你的
<form>

<input TYPE=hidden value="1" name="quanty">
<input TYPE=hidden value="<%=mycarts.GetPrice(i)%>" name="price">
<input TYPE=submit value="Update Quantity" name="button4">
</form>
中把他的action属性指向自己的这个页面。同时你可以使用javascript写onsubmit()函数,将上面那个form的数据也就是Quantity读到你的隐藏字段。我想这个就应该解决你头疼的问题了吧。
当然你要在你的显示Amount时作相应的处理。这个应该很简单,只需要判断有没有传过来参数就好了。
前言 第一部分 JSP入门 第1章 概述 1.1 Java技术 1.1.1 Java技术的发展 1.1.2 JavaBeans 1.1.3 JDBC 1.1.4 J2EE 1.1.5 EJB 1.1.6 Java Servlet 1.2 JSP技术 1.2.1 JSP技术概述 1.2.2 JSP的优势及与其他Web开发工具的比较 1.3 JSP开发Web的几种主要方式 1.3.1 直接使用JSP 1.3.2 JSP+JavaBeans 1.3.3 JSP+JavaBeans+Servlet 1.3.4 J2EE开发模型 1.4 本书用到的软件及获取 第2章 预备知识 2.1 Java程序设计基础 2.1.1 Java语言规则 2.1.2 Java变量和函数 2.1.3 子类 2.1.4 this和super 2.1.5 类的类型 2.1.6 抽象类 2.1.7 接口 2.1.8 包 2.2 JavaBeans 2.2.1 JavaBeans的属性 2.2.2 JavaBeans的事件 2.2.3 持久化 2.2.4 用户化 2.3 Java Servlet 2.3.1 HTTP Servlet API 2.3.2 系统信息 2.3.3 传送HTML信息 2.4 SQL语言 2.4.1 SQL子类型 2.4.2 SQL语言的具体命令和使用 2.5 JDBC 2.5.1 什么是 JDBC 2.5.2 JDBC 产品 2.5.3 连接概述 2.5.5 一个简单的例子 第3章 JSP开发平台的建立:Tomcat 3.1 Tomcat的安装和直接使用 3.2 Tomcat和Apache的配合 3.3 Tomcat和IIS的配合 3.4 Tomcat的配置和常见问题 3.4.1 Tomcat的主配置文件:server.xml 3.4.2 Windows下代码保护的问题 3.4.3 Apache、IIS和Tomcat协作时工作 目录的添加 3.4.4 设定Tomcat作为Windows的服务而启动 3.4.5 在Tomcat中建立新的Web应用程序 第4章 JSP的语法和语义 4.1 通用的语法规则 4.1.1 元素的语法规则 4.1.2 JSP中的相对路径 4.2 注释 4.3 指令 4.3.1 page指令 4.3.2 include指令 4.3.3 taglib指令 4.4 内置对象 4.5 脚本元素 4.5.1 声明 4.5.2 表达式 4.5.3 脚本代码 4.6 动作 4.6.1 id和scope属性 4.6.2 标准动作 第5章 作为XML的JSP 5.1 为什么要使用XML相容的语法形式 5.2 关于文本类型的语法 5.2.1 jsp:root元素 5.2.2 公共标识符 5.3 指令 5.3.1 page指令 5.3.2 include指令 5.3.1 taglib指令 5.4 脚本元素 5.4.1 声明 5.4.2 脚本代码 5.4.3 表达式 5.5 如何将一个普通的JSP文件转换为一个XML 文档 5.6 JSP1.1的DTD文件 第6章 JSP基础实例 6.1 第一个JSP程序—HelloWorld! 6.2 注释的使用 6.3 脚本元素 6.3.1 声明 6.3.2 表达式 6.3.3 脚本代码 6.4 page指令 6.4.1 import 6.4.2 session 6.4.3 错误处理 6.5 包含其他文件 6.6 使用JavaBean 6.7 内置对象 6.7.1 用request对象获取客户端的数据 6.7.2 用response对象向客户端发送信息 6.7.3 其他内置对象 6.8 <jsp:forward> 6.9 使用插件 6.10 使用session对象 6.10.1 会话的概念 6.10.2 session对象可用的方法和属性 6.10.3 session对象的基本例子 6.10.4 利用session制作一个购物车 6.10.5 JavaBeans的作用域 6.10.6 利用JavaBeans制作的购物车 6.11 使用application对象 6.11.1 应用的概念 6.11.2 application对象可用的方法和属性 6.11.3 application对象内包含的系统信息 6.11.4 利用application建立一个简单的聊天室 第7章 用JSP实现常见的Web应用 7.1 常见的Web应用及分析 7.1.1 留言板、论坛和社区 7.1.2 聊天室 7.1.3 搜索引擎 7.1.4 电子商务 7.1.6 后台管理系统 7.2 留言板 7.2.1 功能分析 7.2.2 功能实现和技术要点 7.2.3 代码和分析 7.3 进一步完善的留言板 7.3.1 功能分析 7.3.2 功能实现和技术要点 7.3.3 代码和分析 7.4 聊天室 7.4.1 功能实现和技术要点 7.4.2 代码和分析 7.5 下一步 第二部分 高级JSP技术 第8章 JSP开发平台的搭建:J2EE 8.1 J2SDKEE的安装和使用 8.1.1 软硬件的支持 8.1.2 安装 8.2 J2SDKEE的配置 8.2.1 JDBC的配置 8.2.2 事务处理 8.2.3 服务的端口号 8.2.4 日志文件 8.2.5 安全 8.2.6 钝化发生的内存极限 8.2.7 JNDI服务器主机 8.2.8 HTTP服务的发布目录 8.3 WebLogic的安装和使用 8.3.1 软硬件要求 8.3.2 安装和启动 8.4 WebLogic的配置 8.4.1 系统级参数的设置 8.4.2 将WebLogic作为HTTP服务器使用 8.4.3 使用ISAPI桥连接WebLogic和IIS 8.4.4 WebLogic配置示例 第9章 扩展JSP标签 9.1 概述 9.1.1 扩展标签的作用 9.1.2 如何开发扩展标签 9.1.3 简单的扩展标签 9.1.4 包含内容处理的扩展标签 9.1.5 能够协作的扩展标签 9.1.6 定义了脚本变量的扩展标签 9.2 标签处理类的开发 9.2.1 接口和基类 9.2.2 开发 9.3 标签库文件 9.3.1 taglib 9.3.2 tag 9.4 定位一个tld文件 9.4.1 在Web.xml中定位一个tld文件 9.4.2 直接在JSP文件中定位tld文件 9.5 扩展标签实例 9.5.1 得到父标签的数据 9.5.2 TestTag类 9.5.3 Title类 9.5.4 Data类 9.5.5 TLD文件 9.5.6 在JSP中使用扩展标签 第10章 Enterprise JavaBeans 10.1 Java服务器端组件标准—EJB 10.1.1 EJB和JavaBeans 10.1.2 EJB的开发与使用中的角色 10.2 Session Bean 10.2.1 Session Bean的状态管理模式 10.2.2 Session Bean的生命周期 10.3 Entity Bean 10.3.1 Entity Bean的特性 10.3.2 Entity Bean的生命周期 10.4 EJB的开发 10.4.1 Enterprise JavaBeans的实际处理文件 10.4.2 实现EJBObject文件 10.4.3 实现EJBHome文件 10.4.4 生成ejb-jar.xml文件 10.4.5 打包生成JAR文件 10.5 EJB的部署—J2SDKEE 10.5.1 使用deploytool打包EJB 10.5.2 使用deploytol部署EJB 10.6 EJB的部署—BEA WebLogic 10.6.1 生成可部署的ejb-jar包 10.6.2 部署WbLogic的ejb-jar包 10.7 使用EJB 10.7.1 本地访问EJB 10.7.2 远程访问EJB 10.8 JSP和EJB 10.9 EJB开发实例—电子商务应用 10.9.1 EJB的实现文件—TestCartEJB 10.9.2 实现Home接口TestCartHome 10.9.3 实现远程Object接口TestCart 10.9.4 EJB的Web组件TestCartWebImp 10.9.5 JSP文件 10.9.6 实例的内部运行逻辑 第11章 其他高级功能 11.1 JDBC2.0和JDBC数据库连接池 11.1.1 JDBC2.0新功能概述 11.1.2 结果集增强功能 11.1.3 批处理更新 11.1.4 对Java对象的持久性 11.1.5 数据库连接池使用实例 11.2 文件上载 11.2.1 实现机理 11.2.2 文件上载实例 第12章 JSP高级应用实例:网上书店 12.1 概述 12.2 扩展标签的使用 12.2.1 数据集作用的BookList标签 12.2.2 让数据循环输出的Books标签 12.2.3 输出数据的标签 12.2.4 控制页面前进、后退的标签 12.2.5 测试标签 12.3 EJB及其Web组件 12.3.1 ShoppingCart 12.3.2 Books 附录A JSP应用实例:网上教育代码 附录B JavaServer Pages白皮书 附录C 常用JSP相关网址

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧