表单开发的一些细节技巧(jsp+js)

1 篇文章 0 订阅
1 篇文章 0 订阅
在写和小雨一起的程序的时候,因为相对来说是比较系统的一个项目,我在里面主要做页面设计这一块,所以需要涉及到html的表单开发,还有js的一些判断,下面把具体遇到的内容说一下:

1.首先就是令人头疼的乱码问题,这里我一共是遇到了两个地方的乱码,一个是开发工具myeclipse本身的编码格式,这里就需要Window里面的属性,改变编码格式,具体步骤百度经验即可,这里就不再赘述了。

其实关键的还是传参的乱码的问题,即从servlet到jsp的地方,显示在jsp页面上是乱码,这里就要改参数的乱码形式,有多种方法,比如直接在jsp页面里敲入两行改变编码格式的代码,另一种方法就是写过滤器,过滤器可以改变该工程所有jsp页面的编码格式,所以用的是这个,下面把具体代码贴出来。

首先需要在src建立一个filter的包,再建立一个类:EncodingFilter,里面放有Java代码。

package filter;

import java.io.IOException;
import javax.servlet.Filter;  
import javax.servlet.FilterChain;  
import javax.servlet.FilterConfig;  
import javax.servlet.ServletException;  
import javax.servlet.ServletRequest;  
import javax.servlet.ServletResponse;  
  
public class EncodingFilter implements Filter {  
    //private String encoding = "utf-8";  
  
	//过滤器初始化的动作
    public void init(FilterConfig filterConfig) throws ServletException {  
        //this.encoding = filterConfig.getInitParameter(encoding);  
    }  
  
    //过滤器过滤时的动作
    public void doFilter(ServletRequest request, ServletResponse response,  
            FilterChain filterChain) throws IOException, ServletException {  
        request.setCharacterEncoding("utf-8");//表示设置request的编码为utf-8
        response.setCharacterEncoding("utf-8");  
        //response.setContentType("text/html;charset=" + encoding);  
        filterChain.doFilter(request, response); //表示请求向下传递 
    }  
  
  //过滤器消亡
    public void destroy() {  
        // destroy code.  
    }  
}  

完成EncodingFilter类的编写后,系统还无法识别,必须将其在web.xml中进行配置,配置很简单,即在web.xml这个文件最后加入如下代码

<filter>  
    	<filter-name>EncodingFilter</filter-name>  
    	<filter-class>filter.EncodingFilter</filter-class>  
  	</filter>  
  	<filter-mapping>  
    	<filter-name>EncodingFilter</filter-name>  
    	<url-pattern>/*</url-pattern>  
  	</filter-mapping> 


2.接下来就是表单,用js判断输入是否为空,这个在网站注册用户名和密码的时候经常会用到,我写的代码如下:

<form name="modifyForm" action="modifyproduct"  method="post">
   			<input type="hidden" name="type" value="${type}" />
   			
	<table  align="center">
  		<tr><td>产品ID(不可为空)</td>
  		<td><input type="text" name="id" id="proid" value="${product.id }" /></td>
  		</tr>
	    <tr>
	    <td>产品名称(不可为空)</td>
	    <td><input type="text" name="name" id="proname" value="${product.name }" /></td>
	    </tr>
  		<script language="javascript" type="text/javascript">
		function check()
		{
    		if((document.getElementById("proid").value=="")){
        	alert("id不能为空!");
        	return false;
    	}
    	if((document.getElementById("proname").value=="")){
        	alert("名字不能为空!");
        	return false;
    	}
    	return true;
		}
		</script>
  </table>
	
	<br>
	<a href="ModifyQualChrc.jsp">添加产品质量特性</a>   
	<br>
	<br>
		<input type="submit" οnclick="return check()" value="提交"/>
	</form>

还有一种通过name的方式进行验证:

<script>
function check()
{
    username=form1.username.value;
    password =form1.password.value;
	if (username=="" || paddword=="")
	{
         alert("用户名和密码不能为空");
         return false;
	}
	return true;
}
</script>
  <form method="post" name="form1" action="login.php"  >
 用户名:<input type="text" name="username" /><br/>
 密码:<input type="password" name="password" /><br/>
<input name="submit" value="登录" type="submit"  οnclick="return check()"/>
</form>







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
基于servlet jsp javabean开发模式的用户登录注册系统是一种常见的Web应用程序开发模式。以下是一个简单的描述: 用户登录注册系统的主要组成部分包括前端页面、后端servlet、JavaBean对象和数据库。 首先,前端页面是用户与系统交互的界面,通常使用JSP技术创建。登录页面包括用户名和密码输入框以及登录按钮,注册页面包括用户名、密码和确认密码输入框以及注册按钮。 当用户在登录页面输入用户名和密码并点击登录按钮时,前端页面会通过AJAX或表单提交的方式向后端servlet发送请求。后端servlet负责接收用户请求并处理登录逻辑。 后端servlet首先获取前端页面传递的用户名和密码,并将其封装到JavaBean对象中。JavaBean对象通过封装业务逻辑和数据传递,负责与数据库交互。 接着,后端servlet会调用JavaBean对象的方法,对用户输入的用户名和密码进行验证。验证方式可以是与数据库比对或其他自定义逻辑。如果验证成功,后端servlet将返回登录成功的信息给前端页面,并根据需要进行页面跳转或其他操作。 对于注册功能,当用户在注册页面输入用户名、密码和确认密码并点击注册按钮时,前端页面同样会向后端servlet发送请求。后端servlet获取用户输入的信息并将其封装到JavaBean对象中。 后端servlet调用JavaBean对象的方法,对用户输入的信息进行验证,如检查用户名是否已存在、密码是否符合要求等。如果验证通过,后端servlet将将用户信息存储到数据库中,并返回注册成功的信息给前端页面。 综上所述,基于servlet jsp javabean开发模式的用户登录注册系统涉及前端页面、后端servlet、JavaBean对象和数据库之间的交互。通过这种模式,可以实现用户的登录和注册功能。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值