input禁止后怎么实现复制功能_(变强、变秃)Java从零开始之JQuery购物车功能实操...

今天实现了购物车的一些功能,包括删除添加,复制,修改值,全选,反选等。

以下是代码跟配图:

js代码部分:通过各种事件实现了按钮的具体功能

$(function(){
	//全选功能
	$("#chks").click(function(){
		var flag = $("#chks").prop("checked");
		$("input[name=chk]").prop("checked",flag);
	})
	
	//单选全选中, 全选框自动打勾
	$(document).on('click',"input[name=chk]",function(){
		var flag = true;
		$("input[name=chk]").each(function(){
			if(!$(this).prop("checked")){
				return flag=false;
			}
		})
		$("#chks").prop("checked",flag);
	})
	
	//反选功能
	$("#fx").click(function(){
		var flag =true;
		var triggle = true;
		$("input[name=chk]").each(function(){
			//保存 勾选状态
			flag=$(this).prop("checked")
			//将勾选状态 取反
			$(this).prop("checked",!flag);
			// 勾选状态被取反, 所以  全选的情况被改成了选不选情况, 所以当被选中flag=true时 全选按钮应该false
			if(flag){
				triggle=false;
			}
		})
		$("#chks").prop("checked",triggle);
	})
	
	//新增行功能
	$("#addRow").click(function(){
		var ta = $("#ta");
		ta.append('<tr id="">'+
				'<td><input type="checkbox" name="chk" id="" value="2"/></td>'+
				'<td>《Java编程之道》</td>'+
				'<td>wollo</td>'+
				'<td>10</td>'+
				'<td>'+
					'<input type="button" name="aa" id="" value="修改数量"  />&nbsp;'+
					'<input type="button" name="dd" id="" value="删除" />'+
				'</td>'+
			'</tr>');
	})
	
	//删除功能
	$("#delRow").click(function(){
		//checked属性只有一个值 checked(被选中)即有这个属性就是被选中状态
		var del = $("input[name=chk]:checked");
		if(del.length==0){
			alert("至少选择一行");
		}else{
			//底层自动遍历每个元素 进行操作
			del.parent().parent().remove();
		}
	})
	
	
	//复制行
	$("#copyRow").click(function(){
		var copy = $("input[name=chk]:checked");
		if(copy.length==0){
			alert("至少选择一行");
		}else{
			//复制
			var tr = copy.parent().parent().clone();
			//黏贴
			$("#ta").append(tr);
		}
	})
	
	//修改数量
	$(document).on('click',"input[name=aa]",function(){
		var trNum = $(this).parent().prev();
		trNum.html("<input type='text' size='3px' name='ipNum' onblur='bu1(this)' />");
		
	})

	//删除操作
	$(document).on('click',"input[name=dd]",function(){
		$(this).parent().parent().remove();
	})
	
	
})


//修改数量子方法, 失焦事件,获得值
function bu1(th){
	var val = $(th).val();
	if(""!=val){
		$(th).parent().html(val);
	}else{
		$(th).parent().html('0');
	}
		
}

这是HTML页面的样板:

<html>
	<head>
		<title>jQuery操作表格</title>
		<meta charset="UTF-8"/>
		<!--声明css代码域-->
		<style type="text/css">
			tr{
				height: 40px;
			}
		</style>
	 	<script type="text/javascript" src="js/jquery-1.9.1.js" ></script>
		<script type="text/javascript" src="js/gwc.js" ></script>
	</head>
	<body>
		<h3>jQuery操作表格</h3>
		<hr />
		<input type="button" id="fx" value="反选" />
		<input type="button" id="addRow" value="新增一行" />
		<input type="button" id="delRow" value="删除行" />
		<input type="button" id="copyRow" value="复制行" />
		<table border="1px" cellpadding="10px" cellspacing="0" id="ta">
			<tr>
				<td width="50px"><input type="checkbox" name="chks" id="chks" value="1" /></td>
				<td width="200px">书名</td>
				<td width="200px">作者</td>
				<td width="200px">数量</td>
				<td width="200px">操作</td>
			</tr>
			<tr id="">
				<td><input type="checkbox" name="chk" id="" value="2"  /></td>
				<td>《Java编程之道》</td>
				<td>wollo</td>
				<td>10</td>
				<td>
					<input type="button" name="aa" id="" value="修改数量"  />
					<input type="button" name="dd" id="" value="删除" />
				</td>
			</tr>
			<tr>
				<td><input type="checkbox" name="chk" id="" value="3" /></td>
				<td>《Python和我的故事》</td>
				<td>赵老师</td>
				<td>10</td>
				<td>
					<input type="button" name="aa" id="" value="修改数量" />
					<input type="button" name="dd" id="" value="删除" />
				</td>
			</tr>
			<tr>
				<td><input type="checkbox" name="chk" id="" value="4" /></td>
				<td>《web开发详解》</td>
				<td>张老师</td>
				<td>30</td>
				<td>
					<input type="button" name="aa" id="" value="修改数量" />
					<input type="button" name="dd" id="" value="删除" />
				</td>
			</tr>			
		</table>
	</body>
</html>

3d732196593735bce306843e4ccc5f77.png
页面效果

点击全选:

bae0f4910ea76338435332c57ac122ac.png

反选:

9901af3ad69b68c4917bf2e62850e7fe.png

新增一行:

b8ccf9e6c08f88fdae38485769f4a7b3.png

删除行:

e55116f8f12ab3dd707793827628c969.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个简单的Java程序,使用Session技术实现购物功能。该程序使用了一个名为ShoppingCart的JavaBean来表示购物,使用了Session来存储购物的状态。 ShoppingCart.java ```java import java.util.ArrayList; import java.util.List; public class ShoppingCart { private List<String> items; public ShoppingCart() { items = new ArrayList<String>(); } public void addItem(String item) { items.add(item); } public void removeItem(String item) { items.remove(item); } public List<String> getItems() { return items; } public int getItemCount() { return items.size(); } public void clear() { items.clear(); } } ``` ShoppingCartServlet.java ```java import java.io.IOException; import java.io.PrintWriter; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; public class ShoppingCartServlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 获取Session对象 HttpSession session = request.getSession(); // 获取购物对象 ShoppingCart cart = (ShoppingCart) session.getAttribute("cart"); if (cart == null) { // 如果Session中没有购物对象,创建一个新的购物对象并存储到Session中 cart = new ShoppingCart(); session.setAttribute("cart", cart); } // 获取作类型 String action = request.getParameter("action"); if (action == null) { // 显示购物内容 response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println("<html><body>"); List<String> items = cart.getItems(); if (items.isEmpty()) { out.println("<p>Your shopping cart is empty</p>"); } else { out.println("<p>You have the following items in your shopping cart:</p>"); out.println("<ul>"); for (String item : items) { out.println("<li>" + item + "</li>"); } out.println("</ul>"); } out.println("<a href=\"?action=clear\">Clear cart</a>"); out.println("</body></html>"); } else if (action.equals("add")) { // 添加物品到购物中 String item = request.getParameter("item"); cart.addItem(item); response.sendRedirect(request.getContextPath() + "/cart"); } else if (action.equals("remove")) { // 从购物中删除物品 String item = request.getParameter("item"); cart.removeItem(item); response.sendRedirect(request.getContextPath() + "/cart"); } else if (action.equals("clear")) { // 清空购物 cart.clear(); response.sendRedirect(request.getContextPath() + "/cart"); } } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } } ``` 在ShoppingCartServlet中,我们首先获取Session对象,并从Session中获取购物对象。如果Session中没有购物对象,我们就创建一个新的购物对象并存储到Session中。 然后,我们根据作类型执行相应的作。如果作类型为null,我们就显示购物中的内容。如果作类型为add,我们就将物品添加到购物中。如果作类型为remove,我们就从购物中删除物品。如果作类型为clear,我们就清空购物。 需要注意的是,在Servlet中我们使用了重定向来避免表单重复提交的问题。当我们添加、删除或清空购物时,我们会重定向到/cart页面来避免表单重复提交的问题。 在JSP页面中,我们可以使用表单来向Servlet发送请求来购物。例如,我们可以使用以下代码来添加一个物品到购物中: ```html <form action="<%=request.getContextPath()%>/cart?action=add" method="post"> <input type="text" name="item"> <input type="submit" value="Add to cart"> </form> ``` 当我们提交表单时,Servlet会将物品添加到购物中,并重定向到/cart页面,显示购物中的内容。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值