jquery中邮箱地址 URL网站地址正则验证实例代码
QQ网站有一个网站举报的功能,看了一些js代码觉得写得很不错,我就拿下来了,下面是一个email验证与url网址验证js代码,分享给大家
email地址验证
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地址验证
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);
} // www.jbxue.com
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; // www.jbxue.com
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");
}
}
jquery中邮箱地址 URL网站地址正则验证实例代码的更多相关文章
- 使用SQL命令批量替换WordPress站点中图片的URL链接地址
本文由荒原之梦原创,原文链接:http://zhaokaifeng.com/?p=689 前言: 本文记录了使用SQL命令批量替换URL的方法以及除了替换URL之外,网站更换图片URL地址所必须的其他 ...
- 电子邮箱、邮件地址、网站地址正则表达式!几个有用的RE、regex、regexp!
几个常用的正则表达式! r"\w[-\w\.]*@\w[-\w]*(\.\w[-\w]*)+" 这个是电子邮件地址的. r"<TAG\b[^>]*<(. ...
- js或jQuery中 邮箱跳转的问题,跳转到指定邮箱(通过layui的ifram实现)
对刚做的东西记个笔记 如果遇到同样问题解决起来又问题的欢迎留言 var emailtext = $("#TextBoxEmail").val();//获得要截取的值 var arr ...
- Swift - 正则表达式的使用(附用户名、邮箱、URL等常用格式验证)
Swift虽然是一个新出的语言,但却不提供专门的处理正则的语法和类.所以我们只能使用古老的NSRegularExpression类进行正则匹配. 即先接受一个正则表达式的字符串,由此生成NSRegul ...
- jquery中ajax使用error调试错误的方法,实例分析了Ajax的使用方法与error函数调试错误的技巧
代码:$(document).ready(function() { jQuery("#clearCac").click(function() { jQuery.ajax({ url ...
- JAVA中使用FTPClient实现文件上传下载实例代码
一.上传文件 原理就不介绍了,大家直接看代码吧 ? 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 26 27 28 ...
- jQuery 检查某个元素在页面上是否存在实例代码
用jQuery检查某个元素在网页上是否存在时,应该根据获取元素的长度来判断,代码如下: if($("#tt").length > 0) { //元素存在时执行的代码 } ...
- jquery实现文字由下到上循环滚动的实例代码
<div id="oDiv"> <ul id="oUl"> <li>第1个li元素</li> <li> ...
- condition_variable中的和wait_once和notify_one及notify_all实例代码
// ConsoleApplication6.cpp : 定义控制台应用程序的入口点. #include "stdafx.h" #include<thread> #in ...
随机推荐
- SAP-SD-ABAP-VMOD 查找和应用SD模块用户出口(user exit) 好方法 .
针对 SD 模块,有一个专门管理 user-exit 的开发包 VMOD , 只要用tcode: se80 查看它, 会发现绝大部分的 SD 要相关的 user-exit 都能在这找到.
- android124 zhihuibeijing 新闻中心-组图
package com.itheima.zhbj52.base.menudetail; import java.util.ArrayList; import android.app.Activity; ...
- android124 zhihuibeijing 新闻中心-新闻 -北京页签 下拉刷新
缓存工具类:以url为key,json数据为value, package com.itheima.zhbj52.utils; import com.itheima.zhbj52.global.Glob ...
- mysqldump原理4
http://blog.csdn.net/dba_waterbin/article/details/23611601?utm_source=tuicool&utm_medium=referra ...
- dtrace4linux
http://www.oschina.net/p/dtrace4linux?fromerr=ZSxqzDcE
- 启动和启动和停止MySQL服务停止MySQL服务
1. 启动MySQL服务 启动MySQL服务的命令为: /etc/init.d/mysqld start 命令执行后如图7-5所示,表示启动MySQL服务成功. (点击查看大图)图7-5 启动 ...
- Regular Expressions --正则表达式官方教程
http://docs.oracle.com/javase/tutorial/essential/regex/index.html This lesson explains how to use th ...
- Linux学习之路:认识shell和bash
一.shell 计算机硬件的直接控制者是操作系统的内核(kernel),因为内核的重要性,所以作为用户的我们是无法直接操作内核的,所以我们需要shell调用应用程序或者双击打开安装的应用软件与内核之 ...
- windows共享文件夹如何让CentOS 6.5读取
http://www.111cn.net/sys/CentOS/74104.htm 工作需要,需要把本地win7共享的文件夹让CenotOS 6.5服务器临时使用一下,以下是CentOS 6.5系统挂 ...
- [java小笔记] 关于数组内存管理的理解
数组是大多数编程语言都提供的一种复合结构,如果程序需要多个类型相同的变量时,就可以考虑定义一个数组,java语言的数组变量时引用类型的变量,因此具有java引用变量的特性.在使用数组之前必须对数组对象 ...