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 相关文章推荐
Jquery中对数组的操作代码
Aug 12 Javascript
js实现的点击数量加一可操作数据库
May 09 Javascript
Jquery动态添加及删除页面节点元素示例代码
Jun 16 Javascript
jQuery+CSS3实现3D立方体旋转效果
Nov 10 Javascript
基于JQuery实现分隔条的功能
Jun 17 Javascript
Easyui ueditor 整合解决不能编辑的问题(推荐)
Jun 25 Javascript
JS写XSS cookie stealer来窃取密码的步骤详解
Nov 20 Javascript
微信小程序实现打开内置地图功能【附源码下载】
Dec 07 Javascript
Javascript实现动态时钟效果
Nov 17 Javascript
解决vue单页面应用中动态修改title问题
Jun 09 Javascript
vue路由守卫及路由守卫无限循环问题详析
Sep 05 Javascript
利用React高阶组件实现一个面包屑导航的示例
Aug 23 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/12/08 PHP
ThinkPHP中ajax使用实例教程
2014/08/22 PHP
thinkPHP中配置的读取与C方法详解
2016/12/05 PHP
PHP迭代器接口Iterator用法分析
2017/12/28 PHP
Laravel模型事件的实现原理详解
2018/03/14 PHP
js下弹出窗口的变通
2007/04/18 Javascript
jquery一句话全选/取消全选
2011/03/01 Javascript
javascript之Partial Application学习
2013/01/10 Javascript
JavaScript 学习笔记之操作符(续)
2015/01/14 Javascript
javascript动态添加删除tabs标签的方法
2015/07/06 Javascript
js实现固定显示区域内自动缩放图片的方法
2015/07/18 Javascript
jquery实现树形菜单完整代码
2015/12/29 Javascript
vue中的scope使用详解
2017/10/29 Javascript
微信小程序loading组件显示载入动画用法示例【附源码下载】
2017/12/09 Javascript
Vue2.0实现组件数据的双向绑定问题
2018/03/06 Javascript
jQuery创建及操作xml格式数据示例
2018/05/26 jQuery
Vue项目history模式下微信分享爬坑总结
2019/03/29 Javascript
webpack中的模式(mode)使用详解
2020/02/20 Javascript
[04:45]上海特级锦标赛主赛事第三日TOP10
2016/03/05 DOTA
[42:23]完美世界DOTA2联赛PWL S3 Forest vs Rebirth 第二场 12.10
2020/12/13 DOTA
跟老齐学Python之??碌某?? target=
2014/09/12 Python
python tensorflow学习之识别单张图片的实现的示例
2018/02/09 Python
Python实现去除列表中重复元素的方法小结【4种方法】
2018/04/27 Python
linux下python使用sendmail发送邮件
2018/05/22 Python
一个可以套路别人的python小程序实例代码
2019/04/09 Python
pygame实现俄罗斯方块游戏(AI篇2)
2019/10/29 Python
python manage.py runserver流程解析
2019/11/08 Python
Python退出时强制运行一段代码的实现方法
2020/04/29 Python
关于python scrapy中添加cookie踩坑记录
2020/11/17 Python
HTML5实现预览本地图片
2016/02/17 HTML / CSS
小学生自我评价范例
2013/09/24 职场文书
爱心捐款感谢信
2015/01/20 职场文书
《青山不老》教学反思
2016/02/22 职场文书
浅析NIO系列之TCP
2021/06/15 Java/Android
python脚本框架webpy的url映射详解
2021/11/20 Python
Python OpenCV之常用滤波器使用详解
2022/04/07 Python