jQuery使用$.ajax进行即时验证实例详解


Posted in Javascript onDecember 11, 2015

本文实例讲述了jQuery使用$.ajax进行即时验证的方法。分享给大家供大家参考,具体如下:

这里实现使用jQuery和一般处理程序即时验证用户录入的学号是否重复,当光标离开输入框即给出提示。

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="AddStudent.aspx.cs" Inherits="AddStudent" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
 <title></title>
 <style type="text/css">
  .clsShow
  {
   font-size: 13px;
   border: solid 1px #cc3300;
   padding: 2px;
   display: none;
   margin-bottom: 5px;
   background-color: #ffe0a3;
  }
 </style>
 <script type="text/javascript" src="Scripts/jquery-1.4.2.js"></script>
 <script type="text/javascript">
  $(function () {
   $("#btnSave").click(function () {
    if ($(".clsShow").html().toString() != "")//存在提示信息,则不允许提交表单
     return false;
    else
     return true;
   });
   $("#txtNum").focus(); //输入焦点
   $("#txtNum").keydown(function (event) {
    if (event.which == "13") {//回车键,移动光标到密码框
     $("#txtName").focus();
     $("#txtNum").trigger("blur");
    }
   });
   $("#txtNum").blur(function () {
    //获取学号
    var strTxtName = encodeURI($("#txtNum").val());
    //开始发送数据
    $.ajax
    ({ //请求验证学号是否重复
     url: "Check.ashx", 
     type: "post",
     //传送请求数据
     data: { txtNum: strTxtName },
     success: function (strValue) { //登录成功后返回的数据
      //根据返回值进行状态显示
      if (strValue == "True") {//注意是True,不是true
       $(".clsShow").css("display", "inline");
       $(".clsShow").html("学号已存在,请修改!");
      }
      else {
       $(".clsShow").hide(); //就是把display属性变成none
       $(".clsShow").html("");
      }
     }
    })
   })
  })
 </script>
</head>
<body>
 <form id="form1" runat="server">
 <div>
  学号:<asp:TextBox 
   ID="txtNum" runat="server"></asp:TextBox>
  <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" 
   ControlToValidate="txtNum" ErrorMessage="不能为空"></asp:RequiredFieldValidator>
  <div class="clsShow"></div>
  <br />
  姓名:<asp:TextBox ID="txtName" runat="server"></asp:TextBox>
  <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" 
   ControlToValidate="txtName" ErrorMessage="不能为空"></asp:RequiredFieldValidator>
  <br />
  数学:<asp:TextBox 
   ID="txtMath" runat="server"></asp:TextBox>
  <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" 
   ControlToValidate="txtMath" ErrorMessage="不能为空"></asp:RequiredFieldValidator>
  <asp:RangeValidator ID="RangeValidator1" runat="server" 
   ControlToValidate="txtMath" ErrorMessage="分数在0-100之间" MaximumValue="100" 
   MinimumValue="0" Type="Integer"></asp:RangeValidator>
  <br />
  英语:<asp:TextBox ID="txtEnglish" runat="server"></asp:TextBox>
  <asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" 
   ControlToValidate="txtEnglish" ErrorMessage="不能为空"></asp:RequiredFieldValidator>
  <asp:RangeValidator ID="RangeValidator2" runat="server" 
   ControlToValidate="txtEnglish" ErrorMessage="分数在0-100之间" MaximumValue="100" 
   MinimumValue="0" Type="Integer"></asp:RangeValidator>
  <br />
  语文:<asp:TextBox ID="txtChinese" runat="server"></asp:TextBox>
  <asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" 
   ControlToValidate="txtChinese" ErrorMessage="不能为空"></asp:RequiredFieldValidator>
  <asp:RangeValidator ID="RangeValidator3" runat="server" 
   ControlToValidate="txtChinese" ErrorMessage="分数在0-100之间" MaximumValue="100" 
   MinimumValue="0" Type="Integer"></asp:RangeValidator>
  <br />
  <asp:Button ID="btnSave" runat="server" Text="保存" onclick="btnSave_Click" />
  <asp:Button ID="btnBack" runat="server" Text="返回" CausesValidation="False" 
   onclick="btnBack_Click" />
  <asp:Label ID="lblMsg" runat="server"></asp:Label>
 </div>
 </form>
</body>
</html>

一般处理程序Check.ashx代码:

<%@ WebHandler Language="C#" class="Check" %>
using System;
using System.Web;
public class Check : IHttpHandler {
 public void ProcessRequest (HttpContext context) {
  context.Response.ContentType = "text/plain";
  string num = context.Request["txtNum"].ToString();
  bool result = false;
  if(num=="12")//为了简化代码,没有访问数据库。实际项目应查询数据库。
  {
   result = true;
  }
  context.Response.Write(result);
 }
 public bool IsReusable {
  get {
   return false;
  }
 }
}

希望本文所述对大家jQuery程序设计有所帮助。

Javascript 相关文章推荐
style、 currentStyle、 runtimeStyle区别分析
Aug 01 Javascript
js编码之encodeURIComponent使用介绍(asp,php)
Mar 01 Javascript
Js nodeType 属性全面解析
Nov 14 Javascript
jquery向上向下取整适合分页查询
Sep 06 Javascript
浅谈JS闭包中的循环绑定处理程序
Nov 09 Javascript
javascript框架设计读书笔记之字符串的扩展和修复
Dec 02 Javascript
原生js实现模拟滚动条
Jun 15 Javascript
js对象浅拷贝和深拷贝详解
Sep 05 Javascript
JS实现六边形3D拖拽翻转效果的方法
Sep 11 Javascript
JS实现简单拖拽效果
Jun 21 Javascript
详解angularJS自定义指令间的相互交互
Jul 05 Javascript
vue-router传参用法详解
Jan 19 Javascript
JavaScript基础篇(6)之函数表达式闭包
Dec 11 #Javascript
jQuery弹簧插件编写基础之“又见弹窗”
Dec 11 #Javascript
jQuery点击改变class并toggle及toggleClass()方法定义用法
Dec 11 #Javascript
Express实现前端后端通信上传图片之存储数据库(mysql)傻瓜式教程(二)
Dec 10 #Javascript
Express的路由详解
Dec 10 #Javascript
在 Express 中使用模板引擎
Dec 10 #Javascript
Express实现前端后端通信上传图片之存储数据库(mysql)傻瓜式教程(一)
Dec 10 #Javascript
You might like
PHP实现网上点歌(二)
2006/10/09 PHP
浅析php学习的路线图
2013/07/10 PHP
jquery+php实现导出datatables插件数据到excel的方法
2015/07/06 PHP
100行PHP代码实现socks5代理服务器
2016/04/28 PHP
php中的抽象方法和抽象类
2017/02/14 PHP
阿里云Win2016安装Apache和PHP环境图文教程
2018/03/11 PHP
ThinkPHP3.2框架自定义配置和加载用法示例
2018/06/14 PHP
return false;和e.preventDefault();的区别
2010/07/11 Javascript
JavaScript onkeypress事件入门实例(按下或按住一个键盘按键)
2014/10/17 Javascript
轻量级的原生js日历插件calendar.js使用指南
2015/04/28 Javascript
javascript实现C语言经典程序题
2015/11/29 Javascript
JS获取CSS样式(style/getComputedStyle/currentStyle)
2016/01/19 Javascript
jQuery 如何给Carousel插件添加新的功能
2016/04/18 Javascript
15款最好的Bootstrap在线编辑器
2016/08/03 Javascript
vue.js指令v-model实现方法
2016/12/05 Javascript
JavaScript之生成器_动力节点Java学院整理
2017/06/30 Javascript
使用nodeJs来安装less及编译less文件为css文件的方法
2017/11/20 NodeJs
使用JavaScript生成罗马字符的实例代码
2018/06/08 Javascript
IE9 elementUI文件上传的问题解决
2018/10/17 Javascript
详解Vue SSR( Vue2 + Koa2 + Webpack4)配置指南
2018/11/13 Javascript
ES6 fetch函数与后台交互实现
2018/11/14 Javascript
小程序自定义日历效果
2018/12/29 Javascript
Python实现购物车购物小程序
2018/04/18 Python
python3解析库pyquery的深入讲解
2018/06/26 Python
用Python逐行分析文件方法
2019/01/28 Python
Python数据类型之Set集合实例详解
2019/05/07 Python
python3 自动识别usb连接状态,即对usb重连的判断方法
2019/07/03 Python
postman和python mock测试过程图解
2020/02/22 Python
手摸手教你用canvas实现给图片添加平铺水印的实现
2019/08/20 HTML / CSS
波比布朗英国官网:Bobbi Brown英国
2017/11/13 全球购物
学期自我鉴定范文
2013/10/01 职场文书
中英文自我评价常用句型
2013/12/19 职场文书
学校办公室主任岗位职责
2015/04/01 职场文书
销售经理助理岗位职责
2015/04/13 职场文书
化妆品促销活动总结
2015/05/07 职场文书
2016年暑期教师培训心得体会
2016/01/09 职场文书