工作中的javascript代码收集及整理

有个pub库放在blog的文件夹里面了,注意查查

1.用javascript去除字符串左右空格,包括全角和半角
//用javascript去除字符串左右空格,包括全角和半角
String.prototype.trim = function() //其中表示为:对象.属性.方法=函数方法
var strTrim = this.replace(/(^\s*)|(\s*$)/g, "");
strTrim = strTrim.replace(/^[\s \t]+|[\s \t]+$/, ""); 
return strTrim;
}

2 检查字符串的字符(忽略全半角)长度
functionchkByteLen(str){
 
return str.replace(/[^\x00-\xff]/g,"  ").length)
}

3.弹出新窗口后,按ESC退出
document.οnkeydοwn= keyDown;
function keyDown() 
        {
            
var kc = event.keyCode;
            
            // 按esc退出
            if (kc == 27)
            {
                self.close();
            }

           // 回车键
            if (event.keyCode == 13)
           {
          document.getElementById(
"btnSave").click();
          }
          if (kc == 37 || kc == 33// arrow left
          {
              document.getElementById(
"btnPrev").click();
            }
          if (kc == 39 || kc == 34// arrow right
          {
              document.getElementById(
"btnNext").click();
          }
}

4. 正确截取单字节和双字节混和字符串
/**//*************************************************************     
Author          : Yanfu Xie <xieyanfu@yahoo.com.cn>     
Url             : http://www.yitu.org      
Description     : 正确截取单字节和双字节混和字符串     
String str      : 要截取的字符串     
Number          : 截取长度  
*************************************************************/ 
functionsubstr(str, len) {     
    
if(!str || !len) return ''; }      
    //预期计数:中文2字节,英文1字节     var a = 0;      
    //循环计数     
    var i = 0;      
    //临时字串     
    var temp = '';      
    for (i=0;i<str.length;i++){         
        
if (str.charCodeAt(i)>255){             
            
//按照预期计数增加2             
            a+=2;         
        }         
        else{             
            a++;        
        }         
        //如果增加计数后长度大于限定长度,就直接返回临时字符串         
        if(a > len) 
            return temp; 
        }          
        //将当前内容加到临时字符串         
        temp += str.charAt(i);     
    }     
    //如果全部是单字节字符,就直接返回源字符串     
    return str; 
} 

5. 只允许文本框内输入中英数字下划线

<asp:TextBox id="tbAlbumName" runat="server" onkeyup="value=value.replace(/[^\u4E00-\u9FA50-9a-zA-Z_]/g,'')" MaxLength="12" Width="250px">
http://bbs.blueidea.com/viewthread.php?tid=539508&page=

6. 页面及图片载入进度条

document.write('<div id="loadDiv"><table align=center width=300><tr><td><br><br><br><br><br><br><br><br><br><br><br><br>' +
                            '<img valign="middle" src="/images/ii_loading045.gif" align="absmiddle" border="0">&nbsp;<span class="cx6_big">正在加载图片,请稍候<span   id="loading"></span></span></td></tr></table></div>' +
                        '<div id="hiddenDiv" style="display:   none">');   
        var   setInterval1   =   setInterval("loading.innerText   +=   '.'",   400);   
        var   setInterval2   =   setInterval("loading.innerText   =   ''",   10000);   
        var   setInterval2   =   setInterval("loading.innerText   =   ',<br><span style=\"font-color:yellow;\">载入过慢,请检查您的网络连接速度。</span>'",   500000);   
        
        function window.onload()   
        {   
            
var hiddenDiv = document.getElementById("hiddenDiv");
            var loadDiv = document.getElementById("loadDiv");
            
            hiddenDiv.style.display="inline";   //显示页面内容   
            if (loadDiv != null{loadDiv.removeNode(true);}
            
            clearInterval(setInterval1);   
            clearInterval(setInterval2);   
        }  
        

<div id="hiddenDiv">
                <TABLE id="Table1" height="100%" cellSpacing="2" cellPadding="0" width="100%" border="0">
                    <tr>
                        <TD vAlign="middle" align="center"><asp:image id="img" style="CURSOR: hand" runat="server" ImageAlign="AbsMiddle"BorderColor="#454748"
                                BorderWidth="1" tooltip="点击查看下一张" onerror="this.src='/images/tu_xiangce.gif'"></asp:image><asp:label id="lblNoImg" runat="server" Visible="False" CssClass="cx6_big"><br><br>已到最前或最后,没有图片可显示。<br><br><br><br></asp:label><br>
                            <br style="LINE-HEIGHT: 5px">
                            <asp:button id="btnPrev" runat="server" tooltip="按左方向键或向上键查看" CssClass="kuan_list"Text="前一张"
                                style="Height:18"></asp:button><INPUT class="kuan_list" title="按ESC关闭" style="HEIGHT: 18px"οnclick="javascript:window.close();"
                                type="button" value=" 关  闭 "><INPUT class="kuan_list" title="" style="HEIGHT: 18px"οnclick="javascript:downloadFile();"
                                type=button value=" 下载原图 "><asp:button id="btnNext" runat="server" tooltip="按右方向键或向下键查看" CssClass="kuan_list"Text="后一张"
                                style="Height:18"></asp:button></TD>
                    </tr>
                </TABLE>
            </div>
http://www.yaosansi.com/blog/article.asp?id=484

7. 处理下拉框的增加及删除Item
//给下拉框增加项
function insertOption(obj, _text, _value, _selected){
    
    
// 如果存在此VALUE,则编辑
    for (var i=0; i< obj.length; i++){
        
if (obj[i].value == _value){
            obj[i].text 
= _text;
            
            return;
        }
    }

    
    // 若不存在此VALUE,新建            
    var _option = document.createElement("OPTION");
    _option.text = _text;
    _option.value = _value;
    _option.selected = _selected;
    
    obj.add(_option);
}

//给下拉框去除某项
function delOption(obj,_value){
    
for (var i=0; i< obj.length; i++){
        
if (obj[i].value == _value){
            obj.remove(i);
            
return;
        }
    }

}

8. 显示你输入了多少还可以输入多少的方法
onpropertychange=xxx(this,200,"lblMsg")
//检查输入的字数限制 (ELVA)
// obj: textbox对象
//
 maxLen: 限制的长度
//
 showBoxID: 显示文字信息的span等容器对象的ID
function checkMaxInput(obj, maxLen, showBoxID)
{
    
var showBox = document.getElementById(showBoxID);
    if(obj.value.length>maxLen)
    {  
        obj.value 
= obj.value.substring(0,maxLen);
        showBox.innerHTML="<span class=cx5>你输入的内容超出了字数限制</span>";
    }
    
else
    
{  
        showBox.innerHTML
='<span class=cx3>您已经输入了</span><span class=cx5>+ obj.value.length + '</span><span class=cx3>字, 还剩下<span class=cx5>'+(maxLen-obj.value.length)+'</span>字';
    }

}


9. 字符串的截取,忽略全半角
function substrB(str, len) {     
    
// if(!str || !len) { return ''; }     
     
    //预期计数:中文2字节,英文1字节         
    var a = 0;      
    
    //循环计数     
    var i = 0;      
    
    //临时字串     
    var temp = '';      
    
    for (i=0;i<str.length;i++){       
      
        
if (str.charCodeAt(i)>255){             
            
//按照预期计数增加2             
            a+=2;         
        }         
        else{             
            a
++;        
        }         
        //如果增加计数后长度大于限定长度,就直接返回临时字符串         
        if(a > len) 
            
return temp; 
        }          
        //将当前内容加到临时字符串         
        temp += str.charAt(i);     
    }     
    //如果全部是单字节字符,就直接返回源字符串     
    return str; 


//文本框的输入限制(ELVA)
// isLimited: bool
function boxLength(box,maxLength,isLimited){
    
// 限制为只允许数字大小英文下划线空格和点

    if (isLimited) {box.value= box.value.replace(/[^\u4E00-\u9FA50-9a-zA-Z_ .]/g,'');}
    if (getByteLen(box.value) > maxLength){
        box.value 
= substrB(box.value, maxLength);
        return false;}
}


//取得字符串的字节长度(ELVA)
function getByteLen(str){
    
return str.replace(/[^\x00-\xff]/g,"xx").length;
}

10. 获取某控件下面的已知名称的控件集合:parentObj.all.namedItem(objID);

11. 简化由string得到对象的方法
function $(element) {
  
if (arguments.length > 1{
    
for (var i = 0, elements = [], length = arguments.length; i < length; i++)
      elements.push($(arguments[i]));
    return elements;
  }
  if (typeof element == 'string')
    element = document.getElementById(element);
  return element;
}

12. 这种蛮有趣,重载了Trim()
String.prototype.trim =function()
{
    
return this.replace(/(^[\\s]*)|([\\s]*$)/g, "");
}

13.Jscrip获取Querystring
//得到页面参数值

function getQueryString(param){        
    
var defaultValue="";
    if(window.location.search==""){
        
return "";
    }
    var url=window.location.search.substr(1);
    var params=url.split("&");
    for(elem in params){
        
var current=(params[elem]);
        var idx=current.indexOf("=");
        if(idx>0){
            
var left=current.substr(0,idx);
            var right=current.substr(idx+1);
            //alert(left+","+right);
            if(left.toLowerCase()==param.toLowerCase()){
                
return right;
            }
            
        }

    }

    
return defaultValue;
}

14. 得到某月的当月天数
var dt = new Date(); //得到当前时间
dt = new Date(dt.getFullYear(), dt.getMonth() + 10); //得到本月最后一天
alert(dt.getDate()); // 本月最后一天即为本月的天数

日历的JS代码:http://www.taoshaw.com/blog/article.asp?id=1171
里面有很多JS的时间代码,很有用喔

转载于:https://www.cnblogs.com/syveen/archive/2007/04/17/716506.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/247506.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

iOS11 更改状态栏、导航栏颜色的方法

ios上状态栏 就是指的最上面的20像素高的部分 状态栏分前后两部分&#xff0c;要分清这两个概念&#xff0c;后面会用到&#xff1a; 前景部分&#xff1a;就是指的显示电池、时间等部分&#xff1b; 背景部分&#xff1a;就是显示黑色或者图片的背景部分&#xff1b; (一)设…

i春秋DMZ大型靶场实验(四)Hash基础

下载工具包 打开目标机 通过目录爆破发现 phpmyadmin 在登录位置尝试注入 返现 可以注入 直接上sqlmap 上 bp 代理抓包 sqlmap.py -r bp.txt --dbs 利用sqlmap 跑出root 密码 root666888 登录 phpmyadmin t通过路径报错得到绝对路径 c:\\www\\1.php root 权限…

解决MAC系统升级导致COCOAPODS失效问题

使用pod install出现如下错误 -bash: /usr/local/bin/pod: /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby: bad interpreter: No such file or directory 这是Mac升级系统导致&#xff0c;当你的Mac系统升级为 high siera的时候&#xff0c;别忘记更新…

ASP.NET中进行消息处理(MSMQ) 二

在我上一篇文章《ASP.NET中进行消息处理(MSMQ)一》里对MSMQ做了个通俗的介绍&#xff0c;最后以发送普通文本消息和复杂的对象消息为例介绍了消息队列的使用。 本文在此基础上继续介绍MSMQ的相关知识点&#xff0c;最后还是通过一个示例程序来分析MSMQ在实际项目开发中的应用。…

js常用的数组方法

js常用的数组方法 1.filter() 不会改变原始数组&#xff0c;新数组中的元素是过滤指定数组中符合条件的所有元素 两种写法区别&#xff1a;有return 的加了{}&#xff0c;否则没有return不需要加{} var aa [1, 2, 3, 4, 4, 5, 6, 6]; var bb aa.filter((item, index, sel…

iOS 适配HTTPS方法

一切为了迎合苹果 在WWDC 2016开发者大会上&#xff0c;苹果宣布了一个最后期限&#xff1a;到2017年1月1日 App Store中的所有应用都必须启用 App Transport Security安全功能。App Transport Security&#xff08;ATS&#xff09;是苹果在iOS 9中引入的一项隐私保护功能&…

模板—tarjan求割边

int dfn[MAXN],low[MAXN],cnt; void tarjan(int x,int edg) {low[x]dfn[x]cnt;for(int if(x);i;in(i))if(!dfn[v(i)]){tarjan(v(i),i);low[x]min(low[x],low[v(i)]);if(low[v(i)]>dfn[x])isbridge[i]isbridge[i^1]1;}else if(i!(edg^1))low[x]min(low[x],dfn(v(i))); } 转载…

GoJs Pictures 官方介绍文档

图片 使用Picture类显示图像。 最常见的用法是使用URL字符串设置Picture.source属性&#xff0c;以及通过GraphObject.desiredSize&#xff08;图对象的所需尺寸&#xff09;获取或通过设置GraphObject.width&#xff08;图对象的宽&#xff09;和GraphObject.height&#xff0…

怎样购买及安装ssl安全证书

查找资料记录&#xff0c;不是我的项目笔记 现在越来越多的网站都开始用安全链接了&#xff0c;在国外的话&#xff0c;如果不是一个安全链接&#xff0c;用户很大程度上会拒绝使用&#xff0c;所有安全链接是未来的趋势&#xff0c;楼主第一次配安全证书的时候&#xff0c;刚刚…

XmlViewResolver 和 ResourceBundleViewResolver

使用XmlViewResolver 如果视图对象的 Bean 数目太多&#xff0c;那么直接在 smart-servlet.xml 文件中配置&#xff0c;势必影响主配置文件的简洁性。XmlViewResolver 和 BeanNameViewResolver 功能相似&#xff0c;唯一不同的是它可以将视图 Bean 定义在一个独立的 XML 文件中…

(转载)Git使用教程:最详细、最傻瓜、最浅显、真正手把手教!

转载自 Git使用教程 预警&#xff1a;因为详细&#xff0c;所以行文有些长&#xff0c;新手边看边操作效果出乎你的预料&#xff09;一&#xff1a;Git是什么&#xff1f; Git是目前世界上最先进的分布式版本控制系统。 工作原理 / 流程&#xff1a; Workspace&#xff1a;工作…

soureTree中如何设置git 用户名与密码 SourceTree提交修改用户详细图文方法

mac上软件更新&#xff1a; 现在没有网络小模块了&#xff0c;在同行右边高级里面有默认用户名删除即可&#xff01;&#xff01;&#xff01;&#xff01; sourceTree 切换Git登录用户&#xff0c;之前在SourceTree提交远程服务用的是同事的账号&#xff0c;同事离职后账号也…

shell 脚本 生成文件,文件名为日期时间

脚本如下 #/bin/bashfilename$(date %Y%m%d)_$(date %H%M%S) touch $filename.txt 其中 $() 表示括号中的 shell 命令的结果&#xff0c;所以 filename 是一个字符串&#xff0c;比如 20190714_111631&#xff0c;即 2019 年 7 月 14 日 11 点 16 分 31 秒。 然后第二行命令&am…

js利用HTML5的拖拽API做流程图

上代码 直接用看效果&#xff0c;学习一下 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Document</title><style type"text/css">#d1{width:800px;height:800px;border: 1…

Pots (BFS ➕ 输出路径)

题目链接&#xff1a;http://poj.org/problem?id3414 思路&#xff1a; 因为有六种操作&#xff0c;所以六种操作中合法的都加入队列中BFS 如何去输出路径呢&#xff1f; 我们不妨设一个string数组&#xff0c;它的索引就和我们的步数有关&#xff0c;然后按顺序输出就可以了…

box-sizing的使用

box-sizing 人们慢慢的意识到传统的盒子模型不直接&#xff0c;所以他们新增了一个叫做 box-sizing 的CSS属性。当你设置一个元素为 box-sizing: border-box; 时&#xff0c;此元素的内边距和边框不再会增加它的宽度。这里有一个与前一页相同的例子&#xff0c;唯一的区别是两…

vue-router的hash模式和history模式,

hash模式背后的原理是onhashchange事件,可以在window对象上监听这个事件: window.onhashchange function(event){ console.log(event.oldURL, event.newURL); let hash location.hash.slice(1); document.body.style.color hash; } 上面的代码可以通过改变hash来改变页面字体…

更新node最新版本方法和 npm install -g n 运行错误

使用xshell连接linux服务器后&#xff0c;首先输入node -v查看当前使用的版本 如果上面查看的版本比较低&#xff0c;则可以开始升级 清除npm cache 升级之前还需要安装n模块&#xff0c;n模块是专门用来管理nodejs的版本 输入npm install -g n n模块安装完成之后&#x…

vue-router的路由

路由和组件是有区别的&#xff1a;组件一般是在同一个页面的不同模块&#xff0c;但是路由是直接切换到另一个页面&#xff0c;之前的页面销毁。 App.vue中的router-view会渲染顶级路由匹配到的组件。组件内部嵌套的router-view会渲染子路由匹配到的组件。 当路由跳转的时候&am…