jQuery使用$.ajax进行即时验证的方法


Posted in Javascript onDecember 08, 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 相关文章推荐
新页面打开实际尺寸的图片
Aug 25 Javascript
javascript XMLHttpRequest对象全面剖析
Apr 24 Javascript
Ext.get() 和 Ext.query()组合使用实现最灵活的取元素方式
Sep 26 Javascript
web的各种前端打印方法之jquery打印插件PrintArea实现网页打印
Jan 09 Javascript
javascript arguments使用示例
Dec 16 Javascript
异步JS框架的作用以及实现方法
Oct 29 Javascript
浅析javascript函数表达式
Feb 10 Javascript
概述一个页面从输入URL到页面加载完的过程
Dec 16 Javascript
强大的JavaScript响应式图表Chartist.js的使用
Sep 13 Javascript
关于Vue背景图打包之后访问路径错误问题的解决
Nov 03 Javascript
JavaScript如何借用构造函数继承
Nov 06 Javascript
javascript设计模式 ? 代理模式原理与用法实例分析
Apr 16 Javascript
基于JavaScript创建动态Dom
Dec 08 #Javascript
jQuery实现form表单基于ajax无刷新提交方法详解
Dec 08 #Javascript
JS判断当前页面是否在微信浏览器打开的方法
Dec 08 #Javascript
js实现兼容IE、Firefox的图片缩放代码
Dec 08 #Javascript
JS实现按比例缩放图片的方法(附C#版代码)
Dec 08 #Javascript
JS获取文件大小方法小结
Dec 08 #Javascript
js+ajax实现获取文件大小的方法
Dec 08 #Javascript
You might like
第八节--访问方式
2006/11/16 PHP
php无限极分类实现的两种解决方法
2013/04/28 PHP
PHP中ob_start函数的使用说明
2013/11/11 PHP
Yii中CGridView关联表搜索排序方法实例详解
2014/12/03 PHP
浅谈php7的重大新特性
2015/10/23 PHP
大家须知简单的php性能优化注意点
2016/01/04 PHP
ajax+php实现无刷新验证手机号的实例
2017/12/22 PHP
laravel框架中间件简单使用方法示例
2020/01/25 PHP
javascript GUID生成器实现代码
2009/10/31 Javascript
javascript 设为首页与加入收藏兼容多浏览器代码
2011/01/11 Javascript
给jQuery方法添加回调函数一款插件的应用
2013/01/21 Javascript
jquery基础教程之deferred对象使用方法
2014/01/22 Javascript
jQuery制作简洁的多级联动Select下拉框
2014/12/23 Javascript
JS实现点击颜色块切换指定区域背景颜色的方法
2015/02/25 Javascript
简单理解vue中el、template、replace元素
2016/10/27 Javascript
JavaScript常见的五种数组去重的方式
2016/12/15 Javascript
bootstrap treeview 树形菜单带复选框及级联选择功能
2018/06/08 Javascript
微信小程序内拖动图片实现移动、放大、旋转的方法
2018/09/04 Javascript
Django ModelForm组件使用方法详解
2019/07/23 Python
基于Python实现船舶的MMSI的获取(推荐)
2019/10/21 Python
python hmac模块验证客户端的合法性
2020/11/07 Python
意大利团购网站:Groupon意大利
2016/10/11 全球购物
Stuart Weitzman欧盟:美国奢华鞋履品牌
2017/05/24 全球购物
英国在线照明超市:Castlegate Lights
2019/10/30 全球购物
在SQL Server中创建数据库主要有那种方式
2013/09/10 面试题
上海某公司.net方向笔试题
2014/09/14 面试题
几个Shell Script面试题
2014/04/18 面试题
九年级化学教学反思
2014/01/28 职场文书
2014年学校领导班子对照检查材料
2014/09/19 职场文书
卫生厅领导班子党的群众路线教育实践活动整改措施
2014/09/20 职场文书
广告设计专业毕业生自我鉴定
2014/09/27 职场文书
小学生暑假生活总结
2015/07/13 职场文书
《桂花雨》教学反思
2016/02/19 职场文书
SQL实现LeetCode(177.第N高薪水)
2021/08/04 MySQL
一文搞懂Redis中String数据类型
2022/04/03 Redis
vue特效之翻牌动画
2022/04/20 Vue.js