说明:本js文件中包括了一些常用的js验证和常用的js操作方法(源码见附件)
//获取字符串真实长度,一个汉字为两个长度,一个英文字符或数字为一个字符
function getTrueLenth(str){
return str.replace(/[^\x00-\xff]/g,"xx").length;
}
//校验普通电话、传真号码:可以“+”开头,除数字外,可含有“-”
function isTel(object){
//国家代码(2到3位)-区号(2到3位)-电话号码(7到8位)-分机号(3位)"
var s =document.getElementById(object.id).value;
var pattern =/^(([0\+]\d{2,3}-)?(0\d{2,3})-)(\d{7,8})(-(\d{3,}))?$/;
//var pattern =/(^[0-9]{3,4}\-[0-9]{7,8}$)|(^[0-9]{7,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/;
if(s!="")
{
if(!pattern.exec(s))
{
alert('请输入正确的电话号码:电话号码格式为国家代码(2到3位)-区号(2到3位)-电话号码(7到8位)-分机号(3位)"');
object.value="";
object.focus();
}
}
}
//邮箱验证
function Check(object){
var s =document.getElementById(object.id).value;
var pattern =/^[a-zA-Z0-9_\-]{1,}@[a-zA-Z0-9_\-]{1,}\.[a-zA-Z0-9_\-.]{1,}$/;
if(s!="")
{
if(!pattern.exec(s))
{
alert('请输入正确的邮箱地址');
object.value="";
object.focus();
}
}
}
//验证电子邮箱地址
function verifyEmailAddress(email){
var pattern = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/;
flag = pattern.test(email);
if(flag){
return true;
}else{
return false;
}
}
String.prototype.Trim = function() {
return this.replace(/(^\s*)|(\s*$)/g, "");
}
String.prototype.LTrim = function() {
return this.replace(/(^\s*)/g, "");
}
String.prototype.RTrim = function() {
return this.replace(/(\s*$)/g, "");
}
//字符处理;
//去左右空格;
function trim(s){
return rtrim(ltrim(s));
}
//去左空格;
function ltrim(s){
return s.replace( /^\s*/, "");
}
//去右空格;
function rtrim(s){
return s.replace( /\s*$/, "");
}
//过滤HTML字符
function HTML(text){
text = text.replace(/&/g, "&");
// text = text.replace(/"/g, """);
text = text.replace(/</g, "<");
text = text.replace(/>/g, ">");
text = text.replace(/'/g, "’");
return text ;
}
//还原HTML字符
function ReHTML(text){
text = text.replace(/&/g, "&");
// text = text.replace(/"/g, '"');
// text = text.replace(/</g, "<");
text = text.replace(/>/g, ">");
text = text.replace(/’/g, "'");
return text ;
}
// 判断中英文混排时候的长度
function byteLength (sStr) {
aMatch = sStr.match(/[^\x00-\x80]/g);
return (sStr.length + (! aMatch ? 0 : aMatch.length));
}
//获取字符串中英文长度英文返回1其他都是返回2(以每个字符做单位) tmp是总长度
//参数o作为字符串
function getStrLength(o){
var tmp = 0;
var txReg = /[u4E00-u9FA5uF900-uFA2D]/;
if(null != o && '' != o){
for(var i = 0; i < o.length; i++){
tmp += txReg.test(o.charAt(i)) ? 1 : 2;
}
}
return tmp;
}
//空字符值;
function isEmpty(s){
s = trim(s);
return s.length == 0;
}
//数字;
function isNumber(s){
return !isNaN(s);
}
//身份证;
function isCard(s){
s = trim(s);
var p = /^\d{15}(\d{2}[xX0-9])?$/;
return p.test(s);
}
//URL;
function isURL(s){
s = trim(s).toLowerCase();
var p = /^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$/;
return p.test(s);
}
//限定长度
function limitLen(s,Min,Max){
s=trim(s);
if(s=="") return false;
if((s.length<Min)||(s.length>Max))
return false;
else
return true;
}
//15位以内字母,数字,下划线
function hasAccountChar(s){
var p = /^[a-zA-Z0-9][a-zA-Z0-9_-]{0,15}$/;
return p.test(s);
}
//判断ie6
function isIE6(){
return ($.browser.msie&&$.browser.version=='6.0');
}
//jquery去除全选操作后,全选那勾的去除
function cancelCheckbox(){
$('input[type=checkbox]').eq(0).attr('checked',false);
}
//只能输入数字和小数点
function clearNoNum(obj) {
//先把非数字的都替换掉,除了数字和.
obj.value = obj.value.replace(/[^\d.]/g, "");
//必须保证第一个为数字而不是.
obj.value = obj.value.replace(/^\./g, "");
//保证只有出现一个.而没有多个.
obj.value = obj.value.replace(/\.{2,}/g, ".");
//保证.只出现一次,而不能出现两次以上
obj.value = obj.value.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
}
//进行Iframe的自动撑开,让所有父页面的Iframe都自动适应包含页高度
function iframeAutoHeight() {
var doc = document, p = window;
while (p = p.parent) {
var frames = p.frames, frame, i = 0;
while (frame = frames[i++]) {
if (frame.document == doc) {
// frame.frameElement.style.height = doc.body.scrollHeight;
frame.frameElement.style.height = 200;
doc = p.document;
break;
}
}
if (p == top) {
break;
}
}
}
//获得URL路径中的参数值
function getUrlPara(paras) {
var url = location.href;
var paraString = url.substring(url.indexOf("?") + 1, url.length).split("&");
var paraObj = {};
for (i = 0; j = paraString[i]; i++) {
paraObj[j.substring(0, j.indexOf("=")).toLowerCase()] = j.substring(j.indexOf("=") + 1, j.length);
}
var returnValue = paraObj[paras.toLowerCase()];
if (typeof (returnValue) == "undefined") {
return "";
} else {
return returnValue;
}
}
//只能输入数字
/***
* 不带负号的输入
* 调用方式:onkeydown = "DigitInput(this,event);"
* 8:退格键、46:delete、37-40: 方向键
* 48-57:小键盘区的数字、96-105:主键盘区的数字
* 110、190:小键盘区和主键盘区的小数
* 189、109:小键盘区和主键盘区的负号
***/
function DigitInputOnly(el,ev) {
var event = ev || window.event; //IE、FF下获取事件对象
var currentKey = event.charCode||event.keyCode; //IE、FF下获取键盘码
//小数点处理
if (currentKey == 110 || currentKey == 190) {
if (el.value.indexOf(".")>=0)
if (window.event) //IE
event.returnValue=false; //e.returnValue = false;效果相同.
else //Firefox
event.preventDefault();
} else
if (currentKey!=8 && currentKey != 46 && (currentKey<37 || currentKey>40) && (currentKey<48 || currentKey>57) && (currentKey<96 || currentKey>105))
if (window.event) //IE
event.returnValue=false; //e.returnValue = false;效果相同.
else //Firefox
event.preventDefault();
}
/***
带负数的输入
* 调用方式:onkeydown = "DigitInput(this,event);"
8:退格键、46:delete、37-40: 方向键
48-57:小键盘区的数字、96-105:主键盘区的数字
110、190:小键盘区和主键盘区的小数
189、109:小键盘区和主键盘区的负号
***/
function DigitInputWith(el,ev) {
var event = ev || window.event; //IE、FF下获取事件对象
var currentKey = event.charCode||event.keyCode; //IE、FF下获取键盘码
//小数点处理
if (currentKey == 110 || currentKey == 190) {
if (el.value.indexOf(".")>=0)
if (window.event) //IE
event.returnValue=false; //e.returnValue = false;效果相同.
else //Firefox
event.preventDefault();
} else
//负号处理
if (currentKey == 189 || currentKey == 109) {
if (getPosition(el)>0 || el.value.indexOf("-")>=0)
if (window.event) //IE
event.returnValue=false; //e.returnValue = false;效果相同.
else //Firefox
event.preventDefault();
} else
if (currentKey!=8 && currentKey != 46 && (currentKey<37 || currentKey>40) && (currentKey<48 || currentKey>57) && (currentKey<96 || currentKey>105))
if (window.event) //IE
event.returnValue=false; //e.returnValue = false;效果相同.
else //Firefox
event.preventDefault();
}
/**
* 获取光标所在的字符位置
* @param obj 要处理的控件, 支持文本域和输入框
* @author hotleave
*/
function getPosition(obj){
var result = 0;
if(obj.selectionStart){ //非IE浏览器
result = obj.selectionStart
}else{ //IE
var rng;
if(obj.tagName == "TEXTAREA"){ //如果是文本域
rng = event.srcElement.createTextRange();
rng.moveToPoint(event.x,event.y);
}else{ //输入框
rng = document.selection.createRange();
}
rng.moveStart("character",-event.srcElement.value.length);
result = rng.text.length;
}
return result;
}
//只能输入数字和字母
function checktest(obj){
var re=/^[A-Za-z0-9]*$/;
var str= '';
if (re.test(obj.value)==false){
obj.value=str;
}else{
str=obj.value;
}
}
分享到:
相关推荐
这篇博客“JavaScript常用验证脚本总结”提供了一些在实际开发中常用的JavaScript验证技术,帮助开发者确保用户输入的数据符合预期格式和要求,提高应用程序的安全性和用户体验。以下是关于这个主题的详细知识点: ...
一、JavaScript常用函数 1. 数组操作函数 - `push()`: 向数组末尾添加一个或多个元素,并返回新长度。 - `pop()`: 删除并返回数组最后一个元素。 - `shift()`: 删除并返回数组第一个元素。 - `unshift()`: 在...
下面我们将深入探讨"常用javascript验证功能",包括取keycode大全、日期格式化及验证以及数字格式验证。 1. Keycode大全: Keycode是键盘按键的唯一标识符,JavaScript可以捕获并处理这些按键事件。通过监听键盘...
6. **正则表达式验证**:尽管在示例代码中没有直接使用正则表达式,但在实际的JavaScript验证中,正则表达式是非常重要的工具,用于检查字符串是否符合特定模式,如验证邮箱、电话号码等格式。 7. **事件处理程序**...
总结,JavaScript的常用操作涵盖了变量管理、数据处理、流程控制等多个方面,而DOM和BOM则是JavaScript与网页内容交互的核心工具。通过熟练掌握这些知识,开发者可以创建出更具吸引力和实用性的Web应用。
根据提供的文件内容,我们可以总结出一系列JavaScript常用的验证方法及其应用场景。这些验证方法涵盖了文本长度限制、字符类型过滤、电子邮件格式检查、密码匹配等常见的前端验证需求。下面将逐一解析每个验证方法的...
### JavaScript客户端验证与页面特效制作知识点详解 #### 第一章:JavaScript的基本特征 ##### 一、关于JavaScript JavaScript 是一种轻量级的编程语言,它最初由 Netscape 和 Sun Microsystems 共同开发。该语言...
这个"json操作常用工具类"的压缩包很可能是包含了一些常用的Java JSON处理工具,帮助开发者更便捷地进行JSON的解析、生成、序列化和反序列化。 1. **Jackson库** Jackson是Java中最流行的JSON处理库之一,它提供了...
这篇博客“javascript 常用校验代码”可能包含了多种用于验证用户输入、数据格式以及其他关键业务逻辑的JavaScript函数和方法。 在JavaScript中,数据校验主要针对以下几个方面: 1. **用户输入校验**:这通常涉及...
### JavaScript常用功能对象详解 在JavaScript编程中,掌握一系列实用的功能对象是提升代码效率与质量的关键。本文将深入解析几个常用的JavaScript功能对象及其具体应用,包括`StrLengthByByte`、`IsEmailAddress`...
"JavaScript常用特效实例"这个主题涵盖了JavaScript在网页设计中的多种实用技巧和效果,下面将详细介绍其中可能涉及的一些关键知识点。 1. **DOM操作**:JavaScript能够通过Document Object Model(DOM)来改变HTML...
以下是一些关于表单数据验证的基本概念和常用方法: 1. **基本概念**: - **数据验证**:是指在用户提交表单数据前,检查其是否满足特定条件,如长度、格式、范围等。 - **前端验证**:在客户端(用户浏览器)...
在这个"JavaScript常用函数数、常用正则表达式收集___下载.zip"压缩包中,我们可以预见到一系列与JavaScript相关的实用工具函数和常用的正则表达式模式。 首先,让我们来探讨JavaScript中的常用函数。在JavaScript...
**Meteora 0.7 JavaScript 常用插件集详解** Meteora 0.7 是一个针对JavaScript开发者的资源集合,旨在提供一系列实用的插件,以提升网页编程的效率和功能。这个集合包含了多种不同类型的插件,涵盖了前端开发的多...
这个集合可能包括了各种类型的插件,如DOM操作、动画效果、数据处理、表单验证、响应式设计支持等,这些都是JavaScript开发者在日常工作中经常需要用到的工具。 在JavaScript世界中,插件是扩展或增强原生功能的...
"Javascript常用486范例"提供了一套全面的示例集合,旨在帮助开发者解决实际项目中的各种问题和难点。这个资源涵盖了JavaScript的核心概念、DOM操作、事件处理、AJAX交互、函数与对象、正则表达式、JSON数据处理等多...
"封装JavaScript常用类库.rar"是一个压缩包,其中包含了一个或多个文本文件,很可能是为了便于开发者复用和管理常见的JavaScript功能,避免重复编写相同或相似的代码,从而提高开发效率并减少潜在错误。 首先,让...
JavaScript工具库是程序员在开发Web应用时常用的资源,它包含了各种实用的函数和方法,旨在简化JavaScript编程,提高代码效率。这些工具库通常提供了一系列针对DOM操作、事件处理、动画效果、Ajax通信等功能的API。...
JavaScript是一种广泛应用于Web开发...总结,JavaScript的JSON操作是数据交换的重要工具,而MD5哈希计算则在数据验证和安全领域有广泛应用。通过理解这些基础知识,开发者可以更好地处理Web应用中的数据和安全性问题。