异步刷新实现方式有多种,也可以借助JS的多种框架,下面是使用jQuery框架实现的AJAX 验证用户名是否存在

jQuery.ajax概述

HTTP 请求加载远程数据。

通过jQuery 底层 AJAX 实现。简单易用的高层实现见 $.get, $.post 等。$.ajax() 返回其创建的 XMLHttpRequest对象。大多数情况下你无需直接操作该对象,但特殊情况下可用于手动终止请求。

$.ajax() 只有一个参数:参数 key/value 对象,包含各配置及回调函数信息。详细参数选项见下。

注意: 如果你指定了 dataType 选项,请确保服务器返回正确的 MIME 信息,(如 xml 返回 "text/xml")。错误的 MIME 类型可能导致不可预知的错误。见 Specifying the Data Type for AJAX Requests 。

注意:如果dataType设置为"script",那么在远程请求时(不在同一个域下),所有POST请求都将转为GET请求。(因为将使用DOM的script标签来加载)

jQuery 1.2 中,您可以跨域加载 JSON 数据,使用时需将数据类型设置为 JSONP。使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。数据类型设置为 "jsonp"时,jQuery 将自动调用回调函数。

参数列表:

参数名

类型

描述

url 

String

(默认: 当前页地址) 发送请求的地址。

type

String

(默认: "GET") 请求方式 ("POST" 或 "GET"), 默认为 "GET"。注意:其它HTTP 请求方法,如 PUT 和 DELETE 也可以使用,但仅部分浏览器支持。

timeout

Number

设置请求超时时间(毫秒)。此设置将覆盖全局设置。

async 

Boolean

(默认: true) 默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为 false。注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行。

beforeSend 

Function

发送请求前可修改 XMLHttpRequest 对象的函数,如添加自定义 HTTP头。XMLHttpRequest 对象是唯一的参数。

function (XMLHttpRequest) {

this; // the options for this ajax request

}

cache 

Boolean

(默认: true) jQuery 1.2 新功能,设置为 false 将不会从浏览器缓存中加载请求信息。

complete 

Function

请求完成后回调函数 (请求成功或失败时均调用)。参数: XMLHttpRequest对象,成功信息字符串。

function (XMLHttpRequest, textStatus) {

this; // the options for this ajax request

}

contentType 

String

(默认: "application/x-www-form-urlencoded") 发送信息至服务器时内容编码类型。默认值适合大多数应用场合。

data

Object,
String

发送到服务器的数据。将自动转换为请求字符串格式。GET 请求中将附加在URL 后。查看 processData 选项说明以禁止此自动转换。必须为Key/Value 格式。如果为数组,jQuery 将自动为不同值对应同一个名称。如{foo:["bar1", "bar2"]} 转换为 '&foo=bar1&foo=bar2'。

dataType

String

预期服务器返回的数据类型。如果不指定,jQuery 将自动根据 HTTP 包MIME 信息返回 responseXML 或 responseText,并作为回调函数参数传递,可用值:

"xml": 返回 XML 文档,可用 jQuery 处理。

"html": 返回纯文本 HTML 信息;包含 script 元素。

"script": 返回纯文本 JavaScript 代码。不会自动缓存结果。

"json": 返回 JSON 数据 。

"jsonp": JSONP 格式。使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。

error

Function

(默认: 自动判断 (xml 或 html)) 请求失败时将调用此方法。这个方法有三个参数:XMLHttpRequest 对象,错误信息,(可能)捕获的错误对象。

function (XMLHttpRequest, textStatus, errorThrown) {

// 通常情况下textStatus和errorThown只有其中一个有值

this; // the options for this ajax request

}

global

Boolean

(默认: true) 是否触发全局 AJAX 事件。设置为 false 将不会触发全局 AJAX事件,如 ajaxStart 或 ajaxStop 。可用于控制不同的Ajax事件

ifModified

Boolean

(默认: false) 仅在服务器数据改变时获取新数据。使用 HTTP 包 Last-Modified 头信息判断。

processData

Boolean

(默认: true) 默认情况下,发送的数据将被转换为对象(技术上讲并非字符串)以配合默认内容类型 "application/x-www-form-urlencoded"。如果要发送 DOM 树信息或其它不希望转换的信息,请设置为 false。

success

Function

请求成功后回调函数。这个方法有两个参数:服务器返回数据,返回状态

function (data, textStatus) {

// data could be xmlDoc, jsonObj, html, text, etc...

this; // the options for this ajax request

}

这里有几个Ajax事件参数:beforeSend success complete ,error 。我们可以定义这些事件来很好的处理我们的每一次的Ajax请求。注意一下,这些Ajax事件里面的 this 都是指向Ajax请求的选项信息的(请参考说 get() 方法时的this的图片)。
请认真阅读上面的参数列表,如果你要用jQuery来进行Ajax开发,那么这些参数你都必需熟知的。

实例:

1、请求页面AJax.aspx

HTML代码


<div>
        <input id="txtName" type="text" /><input type="button" value="查看用户名是否存在" id="btn" οnclick="JudgeUserName();" />
        <div id="showResult" style="float:left">div>
    div>

JS代码


<script type="text/javascript" src="CSS/jquery-1.3.2.js"></script>
     <script type="text/javascript">
        function JudgeUserName()
        {
            $.ajax({
            type:"GET",
            url:"AjaxUserInfoModify.aspx",
            dataType:"html",
            data:"userName="+$("#txtName").val(),
            beforeSend:function(XMLHttpRequest)
                {
                    $("#showResult").text("正在查询");
                    //Pause(this,100000);
                },
            success:function(msg)
                {   
                    $("#showResult").html(msg);
                    $("#showResult").css("color","red");
                },
           complete:function(XMLHttpRequest,textStatus)
                {
                    //隐藏正在查询图片
                },
          error:function()
               {
                    //错误处理
               }
            });
        }

</script>

2 、页面AjaxUserInfoModify.aspx

后台代码


protected void Page_Load(object sender, EventArgs e)
    {
        string userName = Request.QueryString["userName"].ToString ();
        if (userName == "James Hao")
        {
            Response.Write ("用户名已经存在!");
        }
        else
        {
            Response.Write ("您可以使用此用户名!");
        }
}

3、运行界面

(1)初始化界面

(2)正在查询提示页面

(3) 验证用户名已经存在页面

(4)  验证用户名未存在页面

至此 AJAX验证用户名是否存在的功能已经完成。

转载于:https://www.cnblogs.com/songmz/p/3964480.html

利用jQuery实现的Ajax 验证用户名是否存在相关推荐

  1. asp.net AJAX 验证用户名是否存在 -Jquery

    异步刷新实现方式有多种,也可以借助JS的多种框架,下面是使用JQuery框架实现的AJAX 验证用户名是否存在 jQuery.ajax概述 HTTP 请求加载远程数据. 通过jQuery 底层 AJA ...

  2. 利用ajax验证用户名,3.6.2 利用Ajax验证注册用户名(1)

    3.6.2  利用Ajax验证注册用户名(1) 由于注册的用户比较多,如果能在客户端还没提交注册表单之前验证用户名是否可用,如果不可用则禁止提交,这样将大大减少网络流量和服务器负载.本节将介绍如何利用 ...

  3. asp.net 用户注册怎么判断用户名是否重复 ajax,AJAX_asp.net结合Ajax验证用户名是否存在的代码,1, 使用JavaScript js文件,验证 - phpStudy...

    asp.net结合Ajax验证用户名是否存在的代码 1, 使用JavaScript js文件,验证用户名是否存在 复制代码 代码如下: var ajax = function(option) { va ...

  4. ajax 用户验证js,js ajax验证用户名

    回答 jQuery的ajax 验证用户名的例子/验证用户名 js 方法 uname:输入的用户名 function ajax_check_uname(uname){ var url='/check/u ...

  5. Ajax验证用户名或昵称是否已被注册

    本文主要介绍了Ajax验证用户名或昵称是否已被注册的实例方法.具有很好的参考价值. JavaScript中XMLHttpRequest对象是整个Ajax技术的核心,它提供了异步发送请求的能力 .而用户 ...

  6. ajax校验用户名可用吗,基于jQuery实现Ajax验证用户名是否可用实例

    本文实例为大家分享了jQuery ajax简单案例-验证用户名是否可用的具体代码,供大家参考,具体内容如下 HTML Insert title here //页面加载完成后 $(function() ...

  7. html ajax验证用户名密码,AJAX实现注册验证用户名

    本文实例为大家分享了AJAX实现注册验证用户名的具体代码,供大家参考,具体内容如下 功能说明 当用户在注册页面输入用户名并且鼠标焦点离开输入框时,到数据表中去验证该用户名是否已经存在,如果存在提示不可 ...

  8. jquery中ajax的分页,利用jQuery中的ajax分页实现代码

    本文实例讲解了用jQuery中的ajax分页相关代码,分享给大家供大家参考,具体内容如下 把分页封装到一个jsp里,那么大家就可以通过include的方式引入分页的页面这里起名为page_ajax.j ...

  9. jquery validation engine ajax验证,jQuery Validation Engine 表单验证

    名称 示例 说明 required validate[required] 表示必填项 groupRequired[string] validate[groupRequired[grp]] 在验证组为 ...

最新文章

  1. C++ Primer 5th笔记(chap 17 标准库特殊设施)正则表达式错误
  2. LVS+KEEPALIVED+nginx 7
  3. mysql 8 配置参数优化_mysql8 参考手册--配置非持久性优化器统计参数
  4. 整理JavaScript中,数组和字符的操作方法
  5. git 分支的创建和切换
  6. 插上翅膀,让Excel飞起来
  7. ComponentOne Ultimate 2012 v2 新特性
  8. [转]XCode调试 设置全局断点并快速定位问题代码所在行
  9. Java简历模板(三十个模板随意选)
  10. python世界你好_“你好,世界Python教程
  11. 软件测试面试题(一)
  12. 任玉刚【Android开发艺术探索】读后笔记二
  13. 推荐几款比较好用的聊天机器人bot开发工具
  14. 什么叫faq_FAQ是什么意思啊
  15. 熄风的止颤的汤治疗帕金森的优势
  16. AutoCAD2015激活码和密钥
  17. 浅谈 | 日内动量交易策略
  18. 2018/9/27---高质量SCI论文撰写方法以及ESI引用经验交流 韩光洁教授(大连理工)
  19. mysql7.6安装_CentOS7.6离线安装MySql5.7
  20. 《X战警:逆转未来》热映 破福斯海外开画纪录

热门文章

  1. Web API核查表:设计、测试、发布API时需思考的43件事
  2. c# 注册表.代码示例.(迭代遍历注册表)[Demo]
  3. 使用工具类实现通用分页处理
  4. happens-before规则和as-if-serial语义
  5. java版电子商务spring cloud分布式微服务b2b2c社交电商:服务容错保护(Hystrix断路器)...
  6. Gradle复制文件/目录方法
  7. log日志轮转--logrotate
  8. 3.1 采购管理规划
  9. RHEL5+Postfix+MySql+IMAP+MailDrop+ExtMail(5)
  10. plsql中导入csvs_在命令行中使用sql分析csvs