`

js小技巧整理

阅读更多
1.
//删除字符串俩端的空格
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, "");
}
2.文本域输入限制
<textarea name="reply_content" id="reply_content" cols="50" rows="5" maxlength="200" onkeyup="return isMaxLen(this)" onBlur="return isMaxLen(this)"></textarea></td>
<script type="text/javascript"> 
function isMaxLen(o){ 
var nMaxLen=o.getAttribute? parseInt(o.getAttribute("maxlength")):""; 
if(o.getAttribute && o.value.length>nMaxLen){ 
o.value=o.value.substring(0,nMaxLen) 


</script>


3.鼠标移动行变色
<tr id="line<%=i%>" onMouseOver="javascript:this.bgColor='#eaeefd';" onMouseOut="javascript:this.bgColor='';" >

4.限制输入为数字
onKeyUp="if(isNaN(value))this.value=''"
onKeyUp="if(!/^[1-9][0-9]*$/.test(this.value))this.value=''"
5.js 去除HTML tag
   str.replace(/<[^>].*?>/g,"");或 str.replace(/<\/?[^>]+>/g,"");//去除HTML tag
   str.replace(/[ | ]*\n/g,"\n"); //去除行尾空白
   str.replace(/\n[\s| | ]*\r/g,"\n"); //去除多余空行
  
6.输入日期比较
     var startD1 = $('start_date').value + "   " + "00:00";
var endD1 = $('end_date').value + "   " + "23:59";
var n1 = new Date(startD1.replace(/-/g, "/"));
var n2 = new Date(endD1.replace(/-/g, "/"));
var n = n2.getTime() - n1.getTime();
if (n <= 0) {
alert("结束日期必须大于开始日期,请重新选择!");
$('end_date').focus();
return false;
}  

7.将json转换为字符串
var jsonToString= function(obj) {
		var THIS = this;
		switch (typeof(obj)) {
			case 'string' :
				return '"' + obj.replace(/(["\\])/g, '\\$1') + '"';
			case 'array' :
				return '[' + obj.map(THIS.jsonToString).join(',') + ']';
			case 'object' :
				if (obj instanceof Array) {
					var strArr = [];
					var len = obj.length;
					for (var i = 0; i < len; i++) {
						strArr.push(THIS.jsonToString(obj[i]));
					}
					return '[' + strArr.join(',') + ']';
				} else if (obj == null) {
					return 'null';
				} else {
					var string = [];
					for (var property in obj)
						string.push(jsonToString(property) + ':'
								+ jsonToString(obj[property]));
					return '{' + string.join(',') + '}';
				}
			case 'number' :
				return obj;
			case 'boolean' :
				return obj;
		}
};

8.日期格式化
//日期格式化(new Date()).pattern("yyyy-MM-dd hh:mm:ss")
Date.prototype.pattern=function(fmt){         
    var o = {         
	    "M+" : this.getMonth()+1, //月份         
	    "d+" : this.getDate(), //日         
	    "h+" : this.getHours(), //小时         
	    "m+" : this.getMinutes(), //分         
	    "s+" : this.getSeconds() //秒         
    };         
    if(/(y+)/.test(fmt)){         
        fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));         
    }         
    for(var k in o){         
        if(new RegExp("("+ k +")").test(fmt)){         
            fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));         
        }         
    }         
    return fmt;         
}  

9.日期相加
/**
 * 日期相加 DateAdd("d",12,"2012/02/29")
 * @param strInterval
 * @param NumDay 相加的天数
 * @param dtDate 当前日期字符串
 * @return
 */
function   DateAdd(strInterval,   NumDay,   dtDate)   {   
	var   dtTmp   =   new   Date(dtDate);   
	if   (isNaN(dtTmp))   dtTmp   =   new   Date();   
	switch   (strInterval)   {   
	case   "s":
	       dtTmp =   new   Date(Date.parse(dtTmp)   +   (1000   *   NumDay)); 
	    break; 
	case   "n":
	       dtTmp =   new   Date(Date.parse(dtTmp)   +   (60000   *   NumDay)); 
	    break; 
	case   "h":
	       dtTmp =   new   Date(Date.parse(dtTmp)   +   (3600000   *   NumDay));
	    break;
	case   "d":
	       dtTmp =   new   Date(Date.parse(dtTmp)   +   (86400000   *   NumDay));
	    break;
	case   "w":
	       dtTmp =   new   Date(Date.parse(dtTmp)   +   ((86400000   *   7)   *   NumDay)); 
	    break;
	case   "m":
	       dtTmp =   new   Date(dtTmp.getFullYear(),   (dtTmp.getMonth())   +   NumDay,   dtTmp.getDate(),   dtTmp.getHours(),   dtTmp.getMinutes(),   dtTmp.getSeconds());
	    break;   
	case   "y":
	       dtTmp =   new   Date((dtTmp.getFullYear()   +   NumDay),   dtTmp.getMonth(),   dtTmp.getDate(),   dtTmp.getHours(),   dtTmp.getMinutes(),   dtTmp.getSeconds());
	    break;
	}
	var mStr=new String(dtTmp.getMonth()+1);
	var dStr=new String(dtTmp.getDate());
	if (mStr.length==1){
	      mStr="0"+mStr;
	}
	if (dStr.length==1){
	      dStr="0"+dStr;
	}
	return dtTmp.getFullYear()+"-"+mStr+"-"+dStr;
} 
<script>
var creatDate = "${l.createTime?date}".replace(/-/g,"/"); //创建时间
var expireCheckAgainDate = new Date(DateAdd("d",2,creatDate).replace(/-/g,"/")).getTime();//到期复查时间
var lastCheckAgainDate = new Date(DateAdd("d",8,creatDate).replace(/-/g,"/")).getTime(); //最迟复查时间
var nowDate =  new Date((new Date()).pattern("yyyy/MM/dd")).getTime();

if(nowDate > lastCheckAgainDate){ 
   var time = parseInt((nowDate - lastCheckAgainDate ) / (1000 * 60 * 60 * 24));
   document.write('已过期'+time+'天<img src="${resourcePath}/img-xzzf/01.gif"  border="0" />');
} else if(nowDate > expireCheckAgainDate && nowDate<=lastCheckAgainDate){ 
   var time = parseInt((lastCheckAgainDate - nowDate  ) / (1000 * 60 * 60 * 24));
   document.write('剩余'+time+'天<img src="${resourcePath}/img-xzzf/02.gif"  border="0" />');
} else {
	var time = parseInt((expireCheckAgainDate - nowDate  ) / (1000 * 60 * 60 * 24));
   document.write('剩余'+time+'天<img src="${resourcePath}/img-xzzf/03.gif"  border="0" />');
}
</script>
分享到:
评论

相关推荐

    JavaScript小技巧整理篇(非常全).pdf

    JavaScript小技巧整理篇(非常全)

    JavaScript小技巧整理

    主要介绍了JavaScript小技巧,整理汇总了JavaScript常用的6个实用技巧,属于JavaScript边角技巧的总结,需要的朋友可以参考下

    JavaScript小技巧整理篇(非常全)

    主要介绍了JavaScript小技巧整理篇(非常全)的相关资料,需要的朋友可以参考下

    js200多个小技巧

    js200多个小技巧,自己整理网上的一些代码合并起来的。

    JavaScript 实例 精粹 整理

    包括:11种用javascript做的刷新按钮的方法、40种Javascript中常用的使用小技巧、Javascript的IE和Firefox兼容性汇编、...、Javascript实现广告页面的定时关闭、一百多个JS小技巧、Javascript实现浏览器菜单命令等等。

    js使用小技巧

    Javascript小技巧一箩筐 事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElement.setCapture(); event.srcElement.releaseCapture(); 事件按键 event.keyCode ...

    客户端js性能优化小技巧整理

    说起javascript无人不知无人不晓吧,下面是一些关于客户端JS性能的一些优化的小技巧,希望对大家有所帮助

    常用javascript整理

    1.JavaScript的数值处理对象学习 .txt 2.JavaScript的系统函数学习 .txt 3.js中用于对象的语句——with和for...in语句学习专题.txt 4.smallSoftkey小软键盘,...正则表达式.txt 9.55种网页常用小技巧 .txt

    javaScript 逻辑运算符使用技巧整理

    主要介绍了javaScript 逻辑运算符使用技巧整理的相关资料,需要的朋友可以参考下

    开发相关资料、小技巧的收集整理

    反正东西很多很杂,对于新手还是值得收藏的....

    高效率JavaScript编写技巧整理

    1.JavaScript是唯一一个对代码体积要求越小越好的语言,因此我们可以通过一些工具来精简和压缩JavaScript代码,如JSMin、Packer、YUICompressor等。这些工具会将局部变量的名字替换成很短的变量名,例如将...

    JavaScript编程学习技巧汇总

    主要介绍了JavaScript编程学习技巧汇总,整理了编程技巧、实用函数、简洁方法、编程细节等相关资料,感兴趣的小伙伴们可以参考一下

    asp.net开发常用整理集合

     javascript小技巧  DotNet 密码加密的技术  用户MD5加密  ASP.net验证码实现  图片水印  防盗链  .NET(C#)连接各类数据库  读取配置文件数据库连接串  正则表达式验证  递归把十进制转换八进制...

    javaScript中indexOf用法技巧

    在本篇文章里小编给大家整理的是一篇关于javaScript中indexOf用法技巧的相关文章,有需要的朋友们学习下。

    JavaScript基本编码模式小结

    本文中笔者整理的这些“模式”包含了编写JavaScript代码时一些常用的方法或者小技巧,可以帮助初学JavaScript的同学迅速提升代码质量。当然,在此之前首先要保证规范的书写习惯,在此之上可以再将本文介绍的知识点...

    jQuery蜘蛛纸牌电脑版游戏代码.zip

    2022年3月20日 jQuery蜘蛛纸牌电脑版游戏代码基于jquery.1.10.2.min.js制作,游戏的目标是以最少的移动次数将牌面中的十叠牌以及待发的五组,共计八副牌整理移除。当所有牌被移.蜘蛛纸牌代码蜘蛛纸牌蜘蛛纸牌下载蜘蛛...

Global site tag (gtag.js) - Google Analytics