为了账号安全,请及时绑定邮箱和手机立即绑定

文本框失去焦点的时候进行ajax 验证

文本框失去焦点的时候进行ajax 验证

月关宝盒 2019-05-16 10:10:44
一个邮箱的文本框,失去焦点的时候进行验证,如果格式错误,提示错误信息, 如果格式正确,再进行ajax请求,去库里查是否此邮箱被注册过,要用传统的ajax,我把ajax这些写在js里面了,总之,弄了半天没效果,求高手发一份,去库里验证那部分不用发了,<input type="text" name="mail" id="mail" onblur=“mailBlur()”/>在js中function mailBlur(){求补充,完善这部分,以及ajax请求部分}
查看完整描述

3 回答

?
慕容708150

TA贡献1831条经验 获得超4个赞


通过给文本框绑定onblur事件事件发生执行提交ajax验证的函数。


onbluer事件 定义和用法

  onblur 事件会在对象失去焦点时发生。


语法

  onblur="SomeJavaScriptCode"


支持该事件的 HTML 标签:


支持该事件的 JavaScript 对象:


实例


  在本例中,我们将在用户离开输入框时执行  JavaScript 代码:

1<html><head><script type="text/javascript">function upperCase(){var x=document.getElementById("fname").valuedocument.getElementById("fname").value=x.toUpperCase()}</script></head><body>输入您的姓名:<input type="text" id="fname" onblur="upperCase()" /></body></html>


 




查看完整回答
反对 回复 2019-05-17
?
慕标琳琳

TA贡献1830条经验 获得超9个赞


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

 var Email = $("#mail").val();

  //ajax开始

                    $.ajax({

                        type: "Post",//请求形式

                        url: "Ajax/LoginRegister.ashx",//处理文件路径

                        data: {

                            op: "2",//判断调用处理文件中的那个方法

                            Email : Email //需要传递的参数

                        },

                        cache: false,

                        async: false,//是否异步

                        dataType: "html",//返回的数据类型 

                        success: function (data) {

                            if (data > 1) {

                                $("#spIsEmail").html("* 该邮箱已被注册!");

                                return false;

                            }

                            else {

                                $("#spIsEmail").html("√");

                            }

                        },

                        error: function () {

                            alert('数据繁忙,请稍后!');

                        }

                    })//end ajax

data中参数 op补充

一个处理文件中可以写多个方法,为了有效的识别调取那个方法就衍生了op这个参数。

需要在处理文件中做以下处理

public void ProcessRequest(HttpContext context)

    {

        context.Response.ContentType = "text/plain";

        string operate =  Request.QueryString["op"];//取出参数 

 

        string returnString = "";   //返回的字符串

        switch (operate)

        {

            case "0":

                returnString = CheckEmailIsOk(); // 验证邮箱与用户是否匹配

                break;

            case "1":

                returnString = 方法名称(); //第二个方法

                break;

            case "2":

               returnString = 方法名称); // 第三个方法

                break;

        }

        context.Response.Write(returnString);

        context.Response.End();

    }


 




查看完整回答
反对 回复 2019-05-17
  • 3 回答
  • 0 关注
  • 587 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信