存档

文章标签 ‘Javascript’

JavaScript常用的正则表达式

2013年4月2日 1 条评论

来源:吾爱IT网
不废话直接上代码

/*   
用途:检查输入的Email信箱格式是否正确   
输入:strEmail:字符串   
返回:如果通过验证返回true,否则返回false   
*/  
function checkEmail(strEmail)    
{   
    //var emailReg = /^[_a-z0-9]+@([_a-z0-9]+\.)+[a-z0-9]{2,3}$/;    
    var emailReg = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/;   
    if ( emailReg.test(strEmail) ) {   
        return true;   
    }   
    else {   
        alert("您输入的Email地址格式不正确!");   
        return false;   
    }   
};   
    
/*
用途:校验ip地址的格式   
输入:strIP:ip地址   
返回:如果通过验证返回true,否则返回false;   
*/  
function isIP(strIP)    
{   
    if (isNull(strIP)) {   
        return false;   
    }   
    var re = /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/g //匹配IP地址的正则表达式    
    if (re.test(strIP)) {   
        if ( RegExp.$1 < 256 && RegExp.$2 < 256 && RegExp.$3 < 256 && RegExp.$4 < 256) {   
            return true;   
        }   
    }   
    return false;   
};   
    
/* 
用途:检查输入手机号码是否正确   
输入:strMobile:字符串   
返回:如果通过验证返回true,否则返回false   
*/  
function checkMobile( strMobile )   
{   
    var regu = /^[1][3][0-9]{9}$/;   
    var re = new RegExp(regu);   
    if (re.test(strMobile)) {   
        return true;   
    }   
    else {   
        return false;   
    }   
};   
    
/* 
用途:检查输入的电话号码格式是否正确   
输入:strPhone:字符串   
返回:如果通过验证返回true,否则返回false   
*/  
function checkPhone( strPhone )    
{   
    var phoneRegWithArea = /^[0][1-9]{2,3}-[0-9]{5,10}$/;   
    var phoneRegNoArea = /^[1-9]{1}[0-9]{5,8}$/;   
    var prompt = "您输入的电话号码不正确!" if ( strPhone.length > 9 ) {   
        if ( phoneRegWithArea.test(strPhone) ) {   
            return true;   
        }   
        else {   
            alert( prompt );   
            return false;   
        }   
    }   
    else {   
        if ( phoneRegNoArea.test( strPhone ) ) {   
            return true;   
        }   
        else {   
            alert( prompt );   
            return false;   
        }   
    }   
};   
    
/* 
用途:检查输入字符串是否为空或者全部都是空格   
输入:str   
返回:如果全是空返回true,否则返回false   
*/  
function isNull( str )   
{   
    if ( str == "" ) {   
        return true;   
    }   
    var regu = "^[ ]+$";   
    var re = new RegExp(regu);   
    return re.test(str);   
};   
    
/* 
用途:检查输入对象的值是否符合整数格式   
输入:str 输入的字符串   
返回:如果通过验证返回true,否则返回false   
*/  
function isInteger( str )   
{   
    var regu = /^[-]{0,1}[0-9]{1,}$/;   
    return regu.test(str);   
};   
    
/* 
用途:检查输入字符串是否符合正整数格式   
输入:s:字符串   
返回:如果通过验证返回true,否则返回false   
*/  
function isNumber( s )   
{   
    var regu = "^[0-9]+$";   
    var re = new RegExp(regu);   
    if (s.search(re) != - 1) {   
        return true;   
    }   
    else {   
        return false;   
    }   
};   
    
/* 
用途:检查输入字符串是否是带小数的数字格式,可以是负数   
输入:str:字符串   
返回:如果通过验证返回true,否则返回false   
*/  
function isDecimal( str )   
{   
    if (isInteger(str)) {   
        return true;   
    }   
    var re = /^[-]{0,1}(\d+)[\.]+(\d+)$/;   
    if (re.test(str)) {   
        if (RegExp.$1 == 0 && RegExp.$2 == 0) {   
            return false;   
        }   
        return true;   
    }   
    else {   
        return false;   
    }   
};   
    
/* 
用途:检查输入对象的值是否符合端口号格式   
输入:str 输入的字符串   
返回:如果通过验证返回true,否则返回false   
*/  
function isPort( str )   
{   
    return (isNumber(str) && str < 65536);   
};   
    
/* 
用途:检查输入字符串是否符合金额格式,格式定义为带小数的正数,小数点后最多三位   
输入:s:字符串   
返回:如果通过验证返回true,否则返回false   
*/  
function isMoney( s )   
{   
    var regu = "^[0-9]+[\.][0-9]{0,3}$";   
    var re = new RegExp(regu);   
    if (re.test(s)) {   
        return true;   
    }   
    else {   
        return false;   
    }   
};   
    
/* 
用途:检查输入字符串是否只由英文字母和数字和下划线组成   
输入:s:字符串   
返回:如果通过验证返回true,否则返回false   
*/  
function isNumberOr_Letter( s )   
{   
    //判断是否是数字或字母    
    var regu = "^[0-9a-zA-Z\_]+$";   
    var re = new RegExp(regu);   
    if (re.test(s)) {   
        return true;   
    }   
    else {   
        return false;   
    }   
};   
    
/* 
用途:检查输入字符串是否只由英文字母和数字组成   
输入:s:字符串   
返回:如果通过验证返回true,否则返回false   
*/  
function isNumberOrLetter( s )   
{   
    //判断是否是数字或字母    
    var regu = "^[0-9a-zA-Z]+$";   
    var re = new RegExp(regu);   
    if (re.test(s)) {   
        return true;   
    }   
    else {   
        return false;   
    }   
};   
    
/* 
用途:检查输入字符串是否只由汉字、字母、数字组成   
输入:s:字符串   
返回:如果通过验证返回true,否则返回false   
*/  
function isChinaOrNumbOrLett( s )   
{   
    //判断是否是汉字、字母、数字组成    
    var regu = "^[0-9a-zA-Z\u4e00-\u9fa5]+$";   
    var re = new RegExp(regu);   
    if (re.test(s)) {   
        return true;   
    }   
    else {   
        return false;   
    }   
};   
    
/* 
用途:判断是否是日期   
输入:date:日期;fmt:日期格式   
返回:如果通过验证返回true,否则返回false   
*/  
function isDate( date, fmt )    
{   
    if (fmt == null) {   
        fmt = "yyyyMMdd";   
    }   
    var yIndex = fmt.indexOf("yyyy");   
    if (yIndex ==- 1) {   
        return false;   
    }   
    var year = date.substring(yIndex, yIndex + 4);   
    var mIndex = fmt.indexOf("MM");   
    if (mIndex ==- 1) {   
        return false;   
    }   
    var month = date.substring(mIndex, mIndex + 2);   
    var dIndex = fmt.indexOf("dd");   
    if (dIndex ==- 1) {   
        return false;   
    }   
    var day = date.substring(dIndex, dIndex + 2);   
    if (!isNumber(year) || year > "2100" || year < "1900") {   
        return false;   
    }   
    if (!isNumber(month) || month > "12" || month < "01") {   
        return false;   
    }   
    if (day > getMaxDay(year, month) || day < "01") {   
        return false;   
    }   
    return true;   
};   
function getMaxDay(year, month)    
{   
    if (month == 4 || month == 6 || month == 9 || month == 11) {   
        return "30";   
    }   
    if (month == 2) {   
        if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {   
            return "29";   
        }   
        else {   
            return "28";   
        }   
        return "31";;   
    }   
};   
    
/* 
用途:字符1是否以字符串2结束   
输入:str1:字符串;str2:被包含的字符串   
返回:如果通过验证返回true,否则返回false   
*/  
function isLastMatch(str1, str2)    
{   
    var index = str1.lastIndexOf(str2);   
    if (str1.length == index + str2.length) {   
        return true;   
    }   
    return false;   
};   
    
/* 
用途:字符1是否以字符串2开始   
输入:str1:字符串;str2:被包含的字符串   
返回:如果通过验证返回true,否则返回false   
*/  
function isFirstMatch(str1, str2)    
{   
    var index = str1.indexOf(str2);   
    if (index == 0) {   
        return true;   
    }   
    return false;   
};   
    
/* 
用途:字符1是包含字符串2   
输入:str1:字符串;str2:被包含的字符串   
返回:如果通过验证返回true,否则返回false   
*/  
function isMatch(str1, str2)    
{   
    var index = str1.indexOf(str2);   
    if (index ==- 1) {   
        return false;   
    }   
    return true;   
};   
    
/* 
用途:检查输入的起止日期是否正确,规则为两个日期的格式正确,且结束如期>=起始日期   
输入:startDate:起始日期,字符串; endDate:结束如期,字符串   
返回:如果通过验证返回true,否则返回false   
*/  
function checkTwoDate( startDate, endDate )    
{   
    if ( !isDate(startDate) ) {   
        alert("起始日期不正确!");   
        return false;   
    }   
    else if ( !isDate(endDate) ) {   
        alert("终止日期不正确!");   
        return false;   
    }   
    else if ( startDate > endDate ) {   
        alert("起始日期不能大于终止日期!");   
        return false;   
    }   
    return true;   
};   
    
/* 
用途:检查复选框被选中的数目   
输入:checkboxID:字符串   
返回:返回该复选框中被选中的数目   
*/  
function checkSelect( checkboxID )    
{   
    var check = 0;   
    var i = 0;   
    if ( document.all(checkboxID).length > 0 )    
    {   
        for ( i = 0; i < document.all(checkboxID).length; i++ ) {   
            if ( document.all(checkboxID).item( i ).checked ) {   
                check += 1;   
            }   
        }   
    }   
    else {   
        if ( document.all(checkboxID).checked ) {   
            check = 1;   
        }   
    }   
    return check;   
}   
function getTotalBytes(varField)    
{   
    if (varField == null) {   
        return - 1;   
    }   
    var totalCount = 0;   
    for (i = 0; i < varField.value.length; i++) {   
        if (varField.value.charCodeAt(i) > 127) {   
            totalCount += 2;   
        }   
        else {   
            totalCount++ ;   
        }   
    }   
    return totalCount;   
}   
function getFirstSelectedValue( checkboxID )   
{   
    var value = null;   
    var i = 0;   
    if ( document.all(checkboxID).length > 0 )   
    {   
        for ( i = 0; i < document.all(checkboxID).length; i++ )   
        {   
            if ( document.all(checkboxID).item( i ).checked ) {   
                value = document.all(checkboxID).item(i).value;   
                break;   
            }   
        }   
    }   
    else {   
        if ( document.all(checkboxID).checked ) {   
            value = document.all(checkboxID).value;   
        }   
    }   
    return value;   
}   
function getFirstSelectedIndex( checkboxID )   
{   
    var value = - 2;   
    var i = 0;   
    if ( document.all(checkboxID).length > 0 )   
    {   
        for ( i = 0; i < document.all(checkboxID).length; i++ ) {   
            if ( document.all(checkboxID).item( i ).checked ) {   
                value = i;   
                break;   
            }   
        }   
    }   
    else {   
        if ( document.all(checkboxID).checked ) {   
            value = - 1;   
        }   
    }   
    return value;   
}   
function selectAll( checkboxID, status )   
{   
    if ( document.all(checkboxID) == null) {   
        return;   
    }   
    if ( document.all(checkboxID).length > 0 )   
    {   
        for ( i = 0; i < document.all(checkboxID).length; i++ ) {   
            document.all(checkboxID).item( i ).checked = status;   
        }   
    }   
    else {   
        document.all(checkboxID).checked = status;   
    }   
}   
function selectInverse( checkboxID )    
{   
    if ( document.all(checkboxID) == null) {   
        return;   
    }   
    if ( document.all(checkboxID).length > 0 )    
    {   
        for ( i = 0; i < document.all(checkboxID).length; i++ )    
        {   
            document.all(checkboxID).item( i ).checked = !document.all(checkboxID).item( i ).checked;   
        }   
    }   
    else {   
        document.all(checkboxID).checked = !document.all(checkboxID).checked;   
    }   
}   
function checkDate( value )    
{   
    if (value == '') {   
        return true;   
    }   
    if (value.length != 8 || !isNumber(value)) {   
        return false;   
    }   
    var year = value.substring(0, 4);   
    if (year > "2100" || year < "1900") {   
        return false;   
    }   
    var month = value.substring(4, 6);   
    if (month > "12" || month < "01") {   
        return false;   
    }   
    var day = value.substring(6, 8);   
    if (day > getMaxDay(year, month) || day < "01") {   
        return false;   
    }   
    return true;   
};   
    
/* 
用途:检查输入的起止日期是否正确,规则为两个日期的格式正确或都为空且结束日期>=起始日期   
输入:startDate:起始日期,字符串; endDate: 结束日期,字符串   
返回:如果通过验证返回true,否则返回false   
*/  
function checkPeriod( startDate, endDate )    
{   
    if ( !checkDate(startDate) ) {   
        alert("起始日期不正确!");   
        return false;   
    }   
    else if ( !checkDate(endDate) ) {   
        alert("终止日期不正确!");   
        return false;   
    }   
    else if ( startDate > endDate ) {   
        alert("起始日期不能大于终止日期!");   
        return false;   
    }   
    return true;   
};   
    
/* 
用途:检查证券代码是否正确   
输入:secCode:证券代码   
返回:如果通过验证返回true,否则返回false   
*/  
function checkSecCode( secCode )    
{   
    if ( secCode.length != 6 ) {   
        alert("证券代码长度应该为6位");   
        return false;   
    }   
    if (!isNumber( secCode ) ) {   
        alert("证券代码只能包含数字");   
        return false;   
    }   
    return true;   
};   
    
/*
function:cTrim(sInputString,iType)   
description:字符串去空格的函数   
parameters:iType:1=去掉字符串左边的空格;2=去掉字符串左边的空格;0=去掉字符串左边和右边的空格   
return value:去掉空格的字符串   
*/  
function cTrim(sInputString, iType)    
{   
    var sTmpStr = ' ';   
    var i = - 1;   
    if (iType == 0 || iType == 1)    
    {   
        while (sTmpStr == ' ') {   
            ++i;   
            sTmpStr = sInputString.substr(i, 1);   
        }   
        sInputString = sInputString.substring(i);   
    }   
    if (iType == 0 || iType == 2)    
    {   
        sTmpStr = ' ';   
        i = sInputString.length;   
        while (sTmpStr == ' ') {   
            --i;   
            sTmpStr = sInputString.substr(i, 1);   
        }   
        sInputString = sInputString.substring(0, i + 1);   
    }   
    return sInputString;   
};  

作者文章地址:http://www.52its.net/articles/615.html

javascript获取url参数的代码

2012年12月27日 3 条评论

[code lang=”js”]
<script type="text/javascript" language="javascript">// <![CDATA[
function request(paras){
var url = location.href;
var paraString = url.substring(url.indexOf("?")+1,url.length).split("&#038;");
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;
}
}
var theurl=request(‘url’);
var theimg=request(‘ddd’);
document.writeln(theurl);
// ]]></script>
[/code]

发现自己的JS真的太屎了 要抓紧时间学习了

分类: Javascript 标签: , , ,

百个前端设计常用Javascript语句

2012年4月20日 没有评论

1.document.write( ” “); 输出语句
2.JS中的注释为//
3.传统的HTML文档顺序是:document- >html- >(head,body)
4.一个浏览器窗口中的DOM顺序是:window- >(navigator,screen,history,location,document)
5.得到表单中元素的名称和值:document.getElementById( “表单中元素的ID號 “).name(或value)
6.一个小写转大写的JS: document.getElementById(“output”).value = document.getElementById( “input “).value.toUpperCase();
7.JS中的值类型:String,Number,Boolean,Null,Object,Function
8.JS中的字符型转换成数值型:parseInt(),parseFloat()
9.JS中的数字转换成字符型:( ” ” 变量)
10.JS中的取字符串长度是:(length)
11.JS中的字符与字符相连接使用 號.
12.JS中的比较操作符有:==等于,!=不等于, >, >=, <. <=
13.JS中声明变量使用:var来进行声明
14.JS中的判定语句结构:if(condition){}else{}
15.JS中的循环结构:for([initial expression];[condition];[upadte expression]) {inside loop}
16.循环中止的命令是:break
17.JS中的函数定义:function functionName([parameter],…){statement[s]}
18.当文件中出现多个form表单时.可以用document.forms[0],document.forms[1]来代替.
19.窗口:打开窗口window.open(), 关闭一个窗口:window.close(), 窗口本身:self
20.状態栏的设置:window.status= “字符 “;
21.弹出提示信息:window.alert( “字符 “);
22.弹出確认框:window.confirm();
23.弹出输入提示框:window.prompt();
24.指定当前显示链接的位置:window.location.href= “URL ”
25.取出窗体中的所有表单的数量:document.forms.length
26.关闭文档的输出流:document.close();
27.字符串追加连接符: =
28.创建一个文档元素:document.createElement(),document.createTextNode()
29.得到元素的方法:document.getElementById()
30.设置表单中所有文本型的成员的值为空:
var form = window.document.forms[0]
for (var i = 0; i <form.elements.length;i ){
if (form.elements.type == “text “){
form.elements.value = ” “;
}
}
31.复选按钮在JS中判定是否选中:document.forms[0].checkThis.checked (checked属性代表为是否选中返回TRUE或FALSE)
32.单选按钮组(单选按钮的名称必须相同):取单选按钮组的长度document.forms[0].groupName.length
33.单选按钮组判定是否被选中也是用checked.
34.下拉列表框的值:document.forms[0].selectName.options[n].value (n有时用下拉列表框名称加上.selectedIndex来確定被选中的值)
35.字符串的定义:var myString = new String( “This is lightsword “);
36.字符串转成大写:string.toUpperCase(); 字符串转成小写:string.toLowerCase();
37.返回字符串2在字符串1中出现的位置:String1.indexOf( “String2 “)!=-1则说明没找到.
38.取字符串中指定位置的一个字符:StringA.charAt(9);
39.取出字符串中指定起点和终点的子字符串:stringA.substring(2,6);
40.数学函数:Math.PI(返回圆周率),Math.SQRT2(返回开方),Math.max(value1,value2)返回两个数中的最在 值,Math.pow(value1,10)返回 value1的十次方,Math.round(value1)四舍五入函数,Math.floor(Math.random()*(n 1))返回隨机数
41.定义日期型变量:var today = new Date();
42.日期函数列表:dateObj.getTime()得到时间,dateObj.getYear()得到年 份,dateObj.getFullYear()得到四位的年份,dateObj.getMonth()得到月份,dateObj.getDate()得 到日,dateObj.getDay()得到日期几,dateObj.getHours()得到小时,dateObj.getMinutes()得到 分,dateObj.getSeconds()得到秒,dateObj.setTime(value)设置时 间,dateObj.setYear(val)设置年,dateObj.setMonth(val)设置 月,dateObj.setDate(val)设置日,dateObj.setDay(val)设置星期几,dateObj.setHours设置小 时,dateObj.setMinutes(val)设置 分,dateObj.setSeconds(val)设置秒 [注重:此日期时间从0开始计]
43.FRAME的表示方式:[window.]frames[n].ObjFuncVarName,frames[“frameName “].ObjFuncVarName,frameName.ObjFuncVarName
44.parent代表父亲对象,top代表最顶端对象
45.打开子窗口的父窗口为:opener
46.表示当前所属的位置:this
47.当在超链接中调用JS函数时用:(javascript :)来开头后面加函数名
48.在老的浏览器中不执行此JS: <!– //– >
49.引用一个文件式的JS: <script type= “text/javascript ” src= “aaa.js ” > </script >
50.指定在不支持脚本的浏览器显示的HTML: <noscript > </noscript >
51.当超链和onCLICK事件都有时,则老版本的浏览器转向a.html,否则转向b.html.例: <a href= “a.html ” >dfsadf </a >
52.JS的內建对象 有:Array,Boolean,Date,Error,EvalError,Function,Math,Number,Object,RangeError,ReferenceError,RegExp,String,SyntaxError,TypeErr or,URIError
53.JS中的换行:&#92;n
54.窗口全屏大小: <script >function fullScreen(){ this.moveTo(0,0);this.outerWidth=screen.availWidth;this.outerHeight=screen.availHeight;}window.maximize=fullScreen; </script >
55.JS中的all代表其下层的全部元素
56.JS中的焦点顺序:document.getElementByid( “表单元素 “).tabIndex = 1
57.innerHTML的值是表单元素的值:如 <p id= “para ” > “how are <em >you </em > ” </p >,则innerHTML的值就是:how are <em >you </em >
58.innerTEXT的值和上面的一样,只不过不会把 <em >这种標记显示出来.
59.contentEditable可设置元素是否可被修改,isContentEditable返回是否可修改的状態.
60.isDisabled判定是否为禁止状態.disabled设置禁止状態
61.length取得长度,返回整型数值
62.addBehavior()是一种JS调用的外部函数文件其扩展名为.htc
63.window.focus()使当前的窗口在所有窗口之前.
64.blur()指失去焦点.与FOCUS()相反.
65.select()指元素为选中状態.
66.防止用户对文本框中输入文本:
67.取出该元素在页面中出现的数量:document.all.tags( “div(或其它HTML標记符) “).length
68.JS中分为两种窗体输出:模態和非模態.window.showModaldialog(),window.showModeless()
69.状態栏文字的设置:window.status= &apos;文字 &apos;,默认的状態栏文字设置:window.defaultStatus = &apos;文字. &apos;;
70.添加到收藏夹:external.AddFavorite( “http://www.dannyg.com “;, “jaskdlf “);
71.JS中碰到脚本错误时不做任何操作:window.onerror = doNothing; 指定错误句柄的语法为:window.onerror = handleError;
72.JS中指定当前打开窗口的父窗口:window.opener,支持opener.opener…的多重继续.
73.JS中的self指的是当前的窗口
74.JS中状態栏显示內容:window.status= “內容 ”
75.JS中的top指的是框架集中最顶层的框架
76.JS中关闭当前的窗口:window.close();
77.JS中提出是否確认的框:if(confirm( “Are you sure? “)){alert( “ok “);}else{alert( “Not Ok “);}
78.JS中的窗口重定向:window.navigate( “http://www.sina.com.cn “;);
79.JS中的打印:window.print()
80.JS中的提示输入框:window.prompt( “message “, “defaultReply “);
81.JS中的窗口滚动条:window.scroll(x,y)
82.JS中的窗口滚动到位置:window.scrollby
83.JS中设置时间间隔:setInterval( “expr “,msecDelay)或setInterval(funcRef,msecDelay)或setTimeout
84.JS中的模態显示在IE4 行,在NN中不行:showModalDialog( “URL “[,arguments][,features]);
85.JS中的退出之前使用的句柄:function verifyClose(){event.returnValue= “we really like you and hope you will stay longer. “;}} window.=verifyClose;
86.当窗体第一次调用时使用的文件句柄:onload()
87.当窗体关闭时调用的文件句柄:onunload()
88.window.location的属性: protocol(http:),hostname(www.example.com),port(80),host(www.example.com:80),pathname( “/a/a.html “),hash( “#giantGizmo “,指跳转到相应的锚记),href(全部的信息)
89.window.location.reload()刷新当前页面.
90.window.history.back()返回上一页,window.history.forward()返回下一页,window.history.go(返回第几页,也可以使用访问过的URL)
91.document.write()不换行的输出,document.writeln()换行输出
92.document.body.noWrap=true;防止链接文字折行.
93.变量名.charAt(第几位),取该变量的第几位的字符.
94. “abc “.charCodeAt(第几个),返回第几个字符的ASCii码值.
95.字符串连接:string.concat(string2),或用 =进行连接
96.变量.indexOf( “字符 “,起始位置),返回第一个出现的位置(从0开始计算)
97.string.lastIndexOf(searchString[,startIndex])最后一次出现的位置.
98.string.match(regExpression),判定字符是否匹配.
99.string.replace(regExpression,replaceString)替换现有字符串.
100.string.split(分隔符)返回一个数组存储值.
101.string.substr(start[,length])取从第几位到指定长度的字符串.
102.string.toLowerCase()使字符串全部变为小写.
103.string.toUpperCase()使全部字符变为大写.
104.parseInt(string[,radix(代表进制)])强制转换成整型.
105.parseFloat(string[,radix])强制转换成浮点型.
106.isNaN(变量):测试是否为数值型.
107.定义常量的要害字:const,定义变量的要害字:var

来自伟大的网络