<input type="text" name="gid" value="<%=rs.getString("gid")%>" style="display: none;">这段代码什么意思
时间: 2023-07-19 12:52:52 浏览: 92
这段代码是一个HTML代码片段,用于创建一个隐藏的文本输入框。其中,name属性指定了该输入框的名称为"gid",value属性通过JSP的脚本表达式<%=rs.getString("gid")%>动态地设置了该输入框的值为数据库结果集rs中的gid字段的值。style属性的"display: none;"设置了该输入框不可见。通常这种方式用于在表单提交时,向服务器传递一些额外的参数值,而这些参数对于用户来说并不需要显示。
相关问题
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@page import="com.test.bean.Goods,java.util.ArrayList" %> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>购物车</title> <style type="text/css"> table{border-collapse:collapse;} td{border:1px solid black; text-align:center; } #deal{margin-left:200px} </style> </head> <body> <jsp:useBean id="cart" class="com.test.bean.Cart" scope="session"></jsp:useBean> <%if(cart==null||cart.getGoodslist().size()==0) out.println("购物车空空如也.....<a href='index.jsp'>返回商品首页</a>"); else{ ArrayList<Goods>goodslist=cart.getGoodslist(); %> <div> 当前购物车共有<%=cart.getGcount() %>件物品 <a href='index.jsp'>返回商品首页</a><br> <table><tr> <td>序号</td> <td>商品号</td> <td>商品名称</td> <td>价格</td> <td>数量</td> <td>小计</td> <td>描述</td></tr> <%for(int i=0;i<goodslist.size();i++){ Goods goods=goodslist.get(i); %> <tr> <td><%=i+1 %></td> <td><%=goods.getGid() %></td> <td><%=goods.getGname() %></td> <td><%= String.format("%.2f", goods.getGprice())%></td> <td><%=goods.getGcount() %></td> <td><%=String.format("%.2f", goods.getGprice()*goods.getGcount()) %></td> <td><a href="<%=request.getContextPath() %>/Servlet/DelCartServlet?gid=<%=goods.getGid() %>">删除</a></td></tr> <%}%> </table><br> <span>总计</span><%=String.format("%.2f",cart.getTotal())%> <input type="button" id="deal" value="购买" /></input> </div> <%}%> <script type="text/javascript"> var dealbutton=document.getElementById("deal"); dealbutton.onclick=function(){ var cf=confirm("确定购买吗?"); if(cf==true){ window.location.href="Servlet/DealServlet"; } } </script> </body> </html> 修改删除功能,在购物车物品数量大于1的情况下点击“删除”时减少1个,等于1时删除此项商品;
要修改删除功能,在购物车物品数量大于1的情况下点击“删除”时,应该减少1个,等于1时则应该删除此项商品。具体实现的代码如下:
1. 在 DelCartServlet 中,判断商品数量是否大于1,若大于1,则减少1个;若等于1,则直接删除此商品。
```
int gid = Integer.parseInt(request.getParameter("gid"));
Cart cart = (Cart) request.getSession().getAttribute("cart");
ArrayList<Goods> goodslist = cart.getGoodslist();
for(int i = 0; i < goodslist.size(); i++) {
Goods goods = goodslist.get(i);
if(goods.getGid() == gid) {
if(goods.getGcount() > 1) {
goods.setGcount(goods.getGcount() - 1);
} else {
goodslist.remove(i);
}
break;
}
}
cart.setGoodslist(goodslist);
response.sendRedirect(request.getContextPath()+"/cart.jsp");
```
2. 在 cart.jsp 中,将删除按钮的链接修改为 DelCartServlet,并传递该商品的 gid 参数。
```
<td><a href="<%=request.getContextPath() %>/Servlet/DelCartServlet?gid=<%=goods.getGid() %>">删除</a></td>
```
<if test="gid == 1"> </if>mybatis传入参数gid是字符串1,为什么不用加单引号
在 MyBatis 中,使用 OGNL(Object-Graph Navigation Language)表达式来进行参数传递和取值。在 OGNL 表达式中,当传入的参数是字符串类型时,不需要加单引号,而是直接使用字符串即可。
因为 MyBatis 在解析 OGNL 表达式时,会自动将字符串类型的参数加上单引号,所以在使用条件判断时,不需要手动添加单引号。
因此,即使传入的参数是字符串类型的 "1",也不需要在 if 语句中添加单引号,直接使用以下语句即可:
```
<if test="gid == 1"> </if>
```
阅读全文
相关推荐

















