推荐人身份证号的验证

1,光标切换时,要校验推荐人身份证格式
2,根据该身份证号查询对应的account表中的ID,并将ID记录到页面的hidden中,表单提交时,将此hidden数据提交给推荐人ID字段。
3)代码
--DAO
--Action
--struts.xml
--JSP

DAO:

public Account findByIdcardNo(String idcardNo) throws DAOException {
	String sql = "select * from account where idcard_no=?";
	
	Connection con = DBUtil.getConnection();
	try {
		PreparedStatement ps = con.prepareStatement(sql);
		ps.setObject(1, idcardNo);
		ResultSet rs = ps.executeQuery();
		if(rs.next()){
			Account a = createAccount(rs);
			return a;
		}
	} catch (SQLException e) {
		e.printStackTrace();
		throw new DAOException("根据身份证查询账务账号失败",e);
	} finally{
		DBUtil.close();
	}
	
	return null;
}

Action:

public class FindRecommenderAction {
	
	public String execute(){
		IAccountDAO dao = DAOFactory.getAccountDAO();
		try {
			account = dao.findByIdcardNo(idcardNo);
		} catch (DAOException e) {
			e.printStackTrace();
			return "error";
		}
		return "success";
	}
	
	public String getIdcardNo() {
		return idcardNo;
	}
	public void setIdcardNo(String idcardNo) {
		this.idcardNo = idcardNo;
	}
	public Account getAccount() {
		return account;
	}
	public void setAccount(Account account) {
		this.account = account;
	}
	//input
	private String idcardNo;
	//output
	private Account account;
}

struts.xml
<!-- 查找推荐人Action -->
<action name="findRecommender" class="netctoss.action.account.FindRecommenderAction">
	<result name="success" type="json">
		<param name="root">account</param>
	</result>
</action>

Jsp:

//校验推荐人身份证
    function checkRecommender(){
	$("#recommenderId").val("");
	var recommenderIdcardNo = $("#recommenderIdcardNo").val();
	//可以为空,重写提示信息
	if(recommenderIdcardNo==null){
		$("#recommerderMsg").text("身份证格式可用").removeClass("error_msg");
		return;
	}
	
	//校验身份证格式
	var reg = /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$/;
	if(!recommenderIdcardNo.match(reg)){
		$("#recommenderMsg").text("身份证格式错误").addClass("error_msg");
		return;
	}
	
	$("#recommenderMsg").text("有效的推荐人身份证").removeClass("error_msg");
	
	$.post(
		"findRecommender",
		{"idcardNo": recommenderIdcardNo},
		function(data){
			var account = data;
			
			if(account == null){
				$("#recommenderMsg").text("找不到推荐人").addClass("error_msg");
			}else{
				$("#recommenderId").val(account.id);
				$("#recommenderMsg").text("推荐人有效.").removeClass("error_msg");
			}
		}
	);
    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值