JSP+Servlet+ JQuery AJAX 实现表单添加验证

在写老师布置的酒店管理系统,在添加桌名的地方想添加验证,去网上看了下大概,自己写了下

我用的是jquery-1.8.3.min.js,下面贴代码

JS文件:

<script src="jquery-1.8.3.min.js"></script>

<script language="javascript">
	function trim(str) { //删除左右两端的空格
			return str.replace(/(^\s*)|(\s*$)/g, "");
		}
	$(function (){
	$("#bName").blur(function(){
	 var name = trim($(this).val());
	 $.ajax({
	 type:"post",
	 async: false,
	 data:"name="+name,
	 url:"../../check",
	 success: function(data){
	 	$("#error").html(data);
	 },error:function(){
	 	alert("未访问到");
	 }
	 })	
	  if(name.length==0){
	 $("#error").html("<font color='red'>输入不能为空!!!</font>");
	
	 }
	})
	})
	function chOk(){
	$("#bName").trigger("blur");
		var error = $("#error").text();
		if(error!=""){
		alert("输入有误,请重新输入!");
		return false;
		}else{
		return true;
		}
	}
	
	</script>

HTML代码:

<body>
<div id="MainArea">
	<!-- 表单内容 -->
	<form action="../../save"  method="post" οnsubmit="return chOk()">
		<!-- 本段标题(分段标题) -->
		<div class="ItemBlock_Title">
        	<img width="4" height="7" border="0" src="style/images/item_point.gif"> 新桌信息 
        </div>
		<!-- 本段表单字段 -->
        <div class="ItemBlockBorder">
            <div class="ItemBlock">
				<div class="ItemBlock2">
					<table cellpadding="0" cellspacing="0" class="mainForm">
						<tr>
							<td width="80px">新桌名字</td>
							<td><input type="text" id="bName" name="bName" class="InputStyle"/>*<span id="error"></span></td>
						</tr>
					</table>
				</div>
            </div>
        </div>
		
		<!-- 表单操作 -->
		<div id="InputDetailBar">
            <input type="submit" value="添加" οnclick="return chOk()" class="FunctionButtonInput">
            <a href="javascript:history.go(-1);" class="FunctionButton">返回</a>
        </div>
	</form>
	
</div>
</body>

Servlet代码:

package servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import dao.ServerDao;
import dao.ServerDaoImpl;

public class CheckSaveTableServlet extends HttpServlet {

	public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		request.setCharacterEncoding("utf-8");
		response.setContentType("text/html;charset=utf-8");
		String tname = request.getParameter("name");
		ServerDao dao = new ServerDaoImpl();
		PrintWriter out = response.getWriter();
		String error = "<font color='red'>你输入的桌名已存在,请换一个!</font>";

		try {
			if (dao.checkTableName(tname)) {
				out.write(error);
				// out.flush();
				out.close();
			} else {

			}
		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

}
ServerDaoImpl()里面的方法:

public Boolean checkTableName(String name) throws Exception {
		Connection conn = BaseDao.getCon();
		String sql = "select * from ttable where tname=?";
		System.out.println(name);
		PreparedStatement prep = conn.prepareStatement(sql);
		prep.setString(1, name);
		ResultSet rs = prep.executeQuery();
		if (rs.next()) {
			return true;
		} else {
			return false;
		}

	}

然后就会有效果了!

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值