当前位置: 代码迷 >> JavaScript >> js function集锦
  详细解决方案

js function集锦

热度:109   发布时间:2012-11-23 22:54:33.0
js function汇总

1。无对话框关闭窗口

   window.opener=null 
    window.open("","_self") 
    window.close();  

2。每次都刷新页面,防止showModalDialog只取缓存数据,

//网页不保存在缓存中,每次访问都刷新页面。
<meta http-equiv="cache-control" content="no-cache, must-revalidate">

3.? 日期操作

?

var now = new Date();                    //当前日期   
var nowDayOfWeek = now.getDay();         //今天本周的第几天   
var nowDay = now.getDate();              //当前日   
var nowMonth = now.getMonth();           //当前月   
var nowYear = now.getYear();             //当前年   
nowYear += (nowYear < 2000) ? 1900 : 0;  //   
  
//格式化日期:yyyy-MM-dd   
function formatDate(date) {    
    var myyear = date.getFullYear();   
    var mymonth = date.getMonth()+1;   
    var myweekday = date.getDate();    
       
    if(mymonth < 10){   
        mymonth = "0" + mymonth;   
    }    
    if(myweekday < 10){   
        myweekday = "0" + myweekday;   
    }   
    return (myyear+"-"+mymonth + "-" + myweekday);    
}    
  
//获得某月的天数   
function getMonthDays(myMonth){   
    var monthStartDate = new Date(nowYear, myMonth, 1);    
    var monthEndDate = new Date(nowYear, myMonth + 1, 1);    
    var   days   =   (monthEndDate   -   monthStartDate)/(1000   *   60   *   60   *   24);    
    return   days;    
}   
  
//获得本季度的开始月份   
function getQuarterStartMonth(){   
    var quarterStartMonth = 0;   
    if(nowMonth<3){   
       quarterStartMonth = 0;   
    }   
    if(2<nowMonth && nowMonth<6){   
       quarterStartMonth = 3;   
    }   
    if(5<nowMonth && nowMonth<9){   
       quarterStartMonth = 6;   
    }   
    if(nowMonth>8){   
       quarterStartMonth = 9;   
    }   
    return quarterStartMonth;   
}   
  
//获得本周的开始日期   
function getWeekStartDate() {    
    var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek);    
    return formatDate(weekStartDate);   
}    
  
//获得本周的结束日期   
function getWeekEndDate() {    
    var weekEndDate = new Date(nowYear, nowMonth, nowDay + (6 - nowDayOfWeek));    
    return formatDate(weekEndDate);   
}    
  
//获得本月的开始日期   
function getMonthStartDate(){   
    var monthStartDate = new Date(nowYear, nowMonth, 1);    
    return formatDate(monthStartDate);   
}   
  
//获得本月的结束日期   
function getMonthEndDate(){   
    var monthEndDate = new Date(nowYear, nowMonth, getMonthDays(nowMonth));    
    return formatDate(monthEndDate);   
}   
  
//获得本季度的开始日期   
function getQuarterStartDate(){   
       
    var quarterStartDate = new Date(nowYear, getQuarterStartMonth(), 1);    
    return formatDate(quarterStartDate);   
}   
  
//或的本季度的结束日期   
function getQuarterEndDate(){   
    var quarterEndMonth = getQuarterStartMonth() + 2;   
    var quarterStartDate = new Date(nowYear, quarterEndMonth, getMonthDays(quarterEndMonth));    
    return formatDate(quarterStartDate);   
}   
  
 

?? 4. 去掉字符串空格

?

function String.prototype.trim(){
      return this.replace(/(^(\s|\u3000)*)|((\s|\u3000)*$)/g, '');
}

??? 5.禁止反复提交

???

//首先在form中加入
onsubmit="return checkSubmit();"
//例如:
<html:form enctype="multipart/form-data" action="<%=url %>" 
method="post" onsubmit="return checkSubmit();">  

//再如以下代码:
var checkSubmitFlg = false; 
function checkSubmit() { 
  if (checkSubmitFlg == true) { 
      return false; 
  } 
  checkSubmitFlg = true; 
  return true; 
} 
document.ondblclick = function docondblclick() { 
  window.event.returnValue = false; 
} 
document.onclick = function doconclick() { 
if (checkSubmitFlg) { 
     	  window.event.returnValue = false; 
     } 
}

?6.失去焦点调用方法

?

var fstationname = document.getElementById("fsApprovebookDto.fstationname");
fstationname.onblur=getStationnameCount;
//getStationnameCount function名称

?7.iframe自适应窗体大小

?

function sizeOfwindow(){
        var report = document.getElementById("report");//report为iframe的id
         report.height= document.body.offsetHeight - 130;
         report.width =  document.body.offsetWidth - 60;
}
window.onresize = function(){
         sizeOfwindow();
}	

??? 8.button置灰:

?

document.getElementById("submits").disabled="true";//submits is button's id

?? 9.Div隐藏?

?

var outstore = document.getElementById("outstore");
outstore.style.display = "block";

?

1 楼 海阔天高 2010-04-08  
有点少吧。。
2 楼 zhangdaiping 2010-04-08  
这个???
3 楼 xiangkun 2010-04-08  
恩,确实有点少..就这么几个还叫 " 汇总 "  @!!!
4 楼 smallratluobin 2010-04-08  
1.对第一个方法不出现对话框不错。
2.去掉空格,用jquery的方法多简单啊。
  function trimStr(str){
return str==null?"":$.trim(str);
  }
3.多总结些,这些太少了吧。
5 楼 matychen 2010-04-08  
支持楼主呢,希望多加点!
6 楼 Rexwong 2010-04-08  
smallratluobin 写道
1.对第一个方法不出现对话框不错。
2.去掉空格,用jquery的方法多简单啊。
  function trimStr(str){
return str==null?"":$.trim(str);
  }
3.多总结些,这些太少了吧。

的确不多,目前来说只是遇到什么问题就补上。
之说以写这个东西只是因为平时写的一些js方法散落四处,找起来实现不易。放在一处为的自己方便查找。当然也希望对大家有一些帮助了。
7 楼 whaosoft 2010-04-08  
不是太对多 但是都是正确的 也支持一下吧
8 楼 signs228 2010-04-09  
原生js还是比较好的
9 楼 zlsunnan 2010-04-09  
好用 谢谢分享!
10 楼 Rexwong 2010-04-09  
signs228 写道
原生js还是比较好的

同意,虽然jquery,ext都很好,但是如果能用js处理我个人还是习惯于用js处理的
11 楼 heqishan 2010-04-09  
有些的确实用,但是叫做汇总就夸大了吧?
12 楼 fanhang116 2010-04-09  
不错!
13 楼 提烟而过 2010-04-10  
首先得说楼主你辛苦了。其次我想问下:为什么这么多人都说好?!这样学习可不好!为什么不问原理或是对像属性的作用,而是去记单个操作:什么去掉字符串空格,什么失去焦点调用的方法,什么button置灰 …… 这有什么用哦?!下次你若遇到文本不可编辑时你是不是又会向你的“什么,什么大全”里面再记下一笔“文本置灰……”啊?再说了你的JS里面写的还有错(应该是你拷别人写的,然后拷错地方了),赶紧去改了吧。
14 楼 yuan2006open 2010-04-12  
浪费哥时间!
15 楼 Rexwong 2010-04-12  
提烟而过 写道
首先得说楼主你辛苦了。其次我想问下:为什么这么多人都说好?!这样学习可不好!为什么不问原理或是对像属性的作用,而是去记单个操作:什么去掉字符串空格,什么失去焦点调用的方法,什么button置灰 …… 这有什么用哦?!下次你若遇到文本不可编辑时你是不是又会向你的“什么,什么大全”里面再记下一笔“文本置灰……”啊?再说了你的JS里面写的还有错(应该是你拷别人写的,然后拷错地方了),赶紧去改了吧。

你说的很对,这的确不是学习之道,我写这个玩意完全是为了工作方便。还有这些都是我考得我以前写的,如果那里有错麻烦指正一下。
16 楼 renjie120 2010-04-12  
just so so.
17 楼 lzl836 2010-06-08  
虽然不多,但是比较实用
  相关解决方案