zoukankan      html  css  js  c++  java
  • jquery中邮箱地址 URL网站地址正则验证实例

    QQ网站有一个网站举报的功能,看了一些js代码觉得写得很不错,我就拿下来了,下面是一个email验证与url网址验证js代码,分享给大家。 
    email地址验证
    
    
    
     代码如下
    
    复制代码
    
    
    
    
    function checkEmail(){
        var email=$.trim($("#report_email").val());
        if(email == ""){
            $("#report_email").next('p').html("*请输入邮箱地址!");
            return false;
        }
        var re = /^([a-zA-Z0-9]+[_|_|.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|_|.]?)*[a-zA-Z0-9]+.[a-zA-Z]{2,3}$/ig;
        if(!re.test(email)){
            $("#report_email").next('p').html("*邮箱地址格式错误!");
            return false;
        }
        return true;
    }
     
    
    url地址验证
    
    
    
     代码如下
    
    复制代码
    
    
    
    
    function getUrlArray(e, type){
        var urls = $.trim($("#report_url_list").val());
        urls = urls.replace(/s*n+s*/ig,"n");
        $("#report_url_list").val(urls);
            //format the urls
        if(type == "blur"){
            reportUrlElm.val(urls);
        }
        if(e && e.keyCode == 13){
            reportUrlElm.val(urls + "n");
        }
            
        urls = urls.split("n");
        user_urls = urls;
        return urls;
    }
    function checkurls(e, type) {
        $("#errorList").find("span").hide();
        urls = getUrlArray(e, type);
        var urlfag = true;
        url_index = 0;
        var urlText="请填写举报网站,您可以举报多个网址,每行一个,一次不超过20个。";
        if(!urls[0] || urls[0] == urlText){
            $("#report_url_list").val(urlText).css("color","#757575");
            $("#report_url_list").next('p').html('*请输入正确的网址');
            $.urlfag=false;
            return false;
        }
        if(urls.length > 20){
                $("#report_url_list").next('p').html("已超过20个,请分批举报")
                $.urlfag=false;
                return false;
        }
        $.urlfag=true;
        for(url_index=0;url_index<urls.length;url_index++){
            $.urlfag = checkEachUrl(urls, url_index)  && $.urlfag ;
        }
        return  urlfag;
    }
    function checkEachUrl(urls, index){
        var e=urls[index];
        a = e.replace(/^http:///, "");
        
        if (a.indexOf("/") != -1) {
            a = a.substring(0, a.indexOf("/"));
        }
        var rg = /^((https?|ftp|news)://)?([w-]+.)+(.)+(:d+)?(/[w- ./?%&=]*)?$/i;
        if(!rg.test(a)){
            urlError("格式错误",index,-1);
            return false;
        }
        if(inUrlArray(urls,index)){
            urlError("请不要举报同一条网站",index,-1);
            return false;  
        }
        $.ajax({
            async:false,
            url:"http://api.pc.qq.com/tapi/url_report.php?url=http://"+a,
            dataType: "jsonp",
            method: "GET",
            success:function(a){
                if(a.is_existed=="yes"){
                    urlError("该网址已被举报",index,-1);
                    $.urlfag= false;
                }
            }
        });
        urlError("正常",index,0);
        return true;
    }
    
    function inUrlArray(urls,index){
        var r=false
            for(i=index+1;i<urls.length;i++){
            a = urls[index].replace(/^http(s?):///, "");
            b = urls[i].replace(/^http(s?):///, "");
            if(a==b)
                r=true;
        }
        return r;
    }
    function  urlError(msg,index,type){
        type=type|| 0;
        var test = $("#errorList div").find("span").eq(index);
        test.show();
        if(type<0){
           test.attr('title',msg).css("background-position","-20px 0px");
        }else{
           test.attr('title',msg).css("background-position","0px 0px");
        }
    }
     
  • 相关阅读:
    android so壳入口浅析
    PySide图形界面开发(一)
    对一个伪装成微信的加固病毒的分析
    ZjDroid工具介绍及脱壳详细示例
    用pyinstaller把python代码打包成exe可执行文件
    Android下so注入汇总
    利用drozer进行Android渗透测试
    OWASP移动安全漏洞Top 10
    python with原理
    腾讯云
  • 原文地址:https://www.cnblogs.com/wenson/p/3322414.html
Copyright © 2011-2022 走看看