问题描述
文件1是个表单,在表单里填上内容,有一个判断的复选框,判断是否保存Cookie。然后在文件2收集Cookie,超链接跳到文件3后,取出Cookie内容,结果实现不了。现在文件3取不出东西来。如果在文件1表单里没加那个复选框,文件2不加if,倒是可以。文件1:Cookie.html<html><head><metacharset="GBK"></head><body><formaction="Cookie01.jsp"method="post">姓名:<inputtype="text"name="uname"><br>年龄:<inputtype="text"name="age"><br><inputtype="checkbox"name="cookie"value="cook">保存Cookie<inputtype="submit"value="提交"></form></body></html>
文件2:Cookie01.jsp<%@pagecontentType="text/html"pageEncoding="GBK"%><html><body><%Stringuname=request.getParameter("uname");Stringage=request.getParameter("age");Stringcookie=request.getParameter("cookie");if(cookie=="cook"){Cookiename_cookie=newCookie("name",uname);Cookieage_cookie=newCookie("age",age);name_cookie.setMaxAge(120);age_cookie.setMaxAge(120);response.addCookie(name_cookie);response.addCookie(age_cookie);}%><ahref="Cookie02.jsp">跳转到Cookie02.jsp</a></body></html>
文件3:Cookie02.jsp<%@pagecontentType="text/html"pageEncoding="GBK"%><html><body><%Cookiec[]=request.getCookies();for(inti=0;i<c.length;i++){%><h3>Cookie名:<%=c[i].getName()%></h3><h3>Cookie值:<%=c[i].getValue()%></h3><%}%></body></html>
解决方案
解决方案二:
checkbox中的value应该要用request.getParameterValues()方法来获取!
解决方案三:
引用1楼u011207831的回复:
checkbox中的value应该要用request.getParameterValues()方法来获取!
不是,request.getParameter()方法也能接收复选框,只是能接收一个而已。现在找到问题了,是if(cookie=="cook")这里错了,应该是if(cookie!=null),因为cookie是不可能=="cook"的,是引用的原因。
解决方案四:
cookie=="cook"这里更改为cookie!=null&&cookie.equals("cook")
解决方案五:
是checkbox的取值问题吧