在JSP跳转时,有时候可以通过传参数来是的页面得到初始化
eciUserGather.jsp?flag=new
String flagValue = request.getParameter("flag");
if (flagValue != null && flagValue.equals("new")) {
session.removeAttribute(SessionNames.FORM_ECI);
session.removeAttribute(SessionNames.LIST_ECI);
}
这里,通过验证参数,将页面session中的attribute移除
表单提交到自个网页,有什么办法提交之后,而且一刷新,input输入框里的值给它保留显示着的
<input type="text" name="begin" value="<%=request.getParameter("begin")==null?"":request.getParameter("begin")%>">
js验证输入框是否为空的方法:
1、document.getElementById.value.length==02、<form name="free"method="POST"action=""οnsubmit="return check()"> <p align="center"> <input type="text"name="t1"size="20"> <input type="submit"value="提交"name="B1"> </p> </form>document.free.t1.value.length==03、JSP中的page标签中的pageEncoding属性和contentType属性pageEncoding的默认值为ISO-8859-1 contentType的默认属性为:text/html; charset=ISO-8859-1这里就存在一个编码的问题:1、JSP文件本身的编码。2. pageEncoding的编码 。 3 contentType的编码
当不存在中文的时候,当然默认编码就行当存在中文的时候,JSP文件本身的编码必须设置为能支持中文编码如:gbk、gb2312、utf-8,不设置的话文件中中文在编辑的时候会出现乱码
话说pageEncoding也是JSP本身的编码所以pageEncoding也必须和JSP文件的编码一样,不然会出现乱码
其实pageEncoding应该说是jsp经过的服务器后台的servlet文件的编码举个例子:在JSP中输入中文之后,编译器(eclipse)一般会提示是否将文件保存为UTF-8,此时将文件保存为UTF-8而我们又讲pageEncoding设置为GBK,必然出现乱码问题至于contentType,话说这是设置文件的mine类型
这里说下JSP文件编译和编码过程
JSP要经过两次的“编码”,第一阶段会用pageEncoding,第二阶段会用utf-8至utf-8,第三阶段就是由Tomcat出来的网页, 用的是contentType。
第一阶段是jsp编译成.java,它会根据pageEncoding的设定读取jsp,结果是由指定的编码方案翻译成统一的UTF-8 JAVA源码(即.java),如果pageEncoding设定错了,或没有设定,出来的就是中文乱码。
第二阶段是由JAVAC的JAVA源码至java byteCode的编译,不论JSP编写时候用的是什么编码方案,经过这个阶段的结果全部是UTF-8的encoding的java源码。
JAVAC用UTF-8的encoding读取java源码,编译成UTF-8 encoding的二进制码(即.class),这是JVM对常数字串在二进制码(java encoding)内表达的规范。
第三阶段是Tomcat(或其的application container)载入和执行阶段二的来的JAVA二进制码,输出的结果,也就是在客户端见到的,这时隐藏在阶段一和阶段二的参数 contentType就发挥了功效
而一般我们不需要设置contentType的类型,因为它默认会根据pageEncoding的变化而变化,如果非得要设,那就得设置和pageEncoding一样的类型
不要就要出现乱码