`
天涯海角tour
  • 浏览: 169850 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

常用JS 方法

阅读更多
/**
 *等待的提示  1-显示  0-不显示

 */
function wait(flag)
{
	var divload = document.all["Loading"];
	if (flag == 1)
	{
		divload.style.display = 'block';
		divload.style.left = document.body.scrollLeft+120;
	}
	else
	{
		divload.style.display = 'none';
	}
}
/**
*返回到上一页面
**/
function comeback()
{
	window.history.back();
}

function change()
{
	alert('1')
	var img = document.getElementById("in");
	if(parent.fstMain.cols=="200,*")
	{
		fstMain.cols="0,*";
		img.src="../Image/mainframe/Arrowright.gif";
	}
	else
	{
		fstMain.cols="200,*";
		img.src="../Image/mainframe/ArrowLeft.gif";
	}
}

/**
 *ȥ��去掉两边的空格

 */
function trim(ui){
  var notValid=/(^\s)|(\s$)/;
  while(notValid.test(ui)){
    ui=ui.replace(notValid,"");
  }
  return ui;
}

/*
*判断是否是空
*空告警并返回true,不空返回false
*/
function isEmptyAlert(pObj,errMsg){
  var obj = eval(pObj);
  if( obj == null || trim(obj.value) == ""){
    if (errMsg == null || errMsg =="")
      alert("输入不能为空!");
    else
      alert(errMsg);
    obj.focus();
    return true;
  }
  return false;
}

/*
*判断是否是空
*空返回true,不空返回false
*/

function isEmpty(pObj){
  var obj = eval(pObj);
  if( obj == null || trim(obj.value) == ""){
    return true;
  }
  return false;
}
/*
*判断是否是数字

*/
function isNumber(pObj){
  	if(!/^([1-9]*[0-9]*|0)[\.]?[0-9]{0,4}$/.test(pObj.value))
	{
		alert('必须为数字格式或位数过多!');
		pObj.focus();
	}
}

/*
*判断字符串是否是数字
*/
function isNumberStr(str,errMsg){
  strRef = "1234567890";
  if(trim(str)=="") return true;
  for(var i=0;i<str.length;i++) {
    tempChar= str.substring(i,i+1);
    if (strRef.indexOf(tempChar,0)==-1) return false;
  }
  return true;
}

/*
*判断是否是数字列表,(用,隔开数字)

*/
function isNumberList(pObj,errMsg){
	var obj = eval(pObj);
	if(isEmpty(pObj)) return true;
	var arr=obj.value.split(",");
  for(var i=0;i<arr.length;i++){
    if(!isNumberStr(arr[i])){
    	if (errMsg == null || errMsg =="")
        alert("输入类型列表格式不符合,请重新输入");
      else
        alert(errMsg);
      if(obj.type=="text")
        obj.focus();
      return false;
    }
  }
  return true;
}
/**
 *判断是否是数字,数字可以为负数

*/
function isNegative(pObj,errMsg){
  var obj = eval(pObj);
  strRef = "1234567890-";
  if(isEmpty(pObj)) return true;
  for (i=0;i<obj.value.length;i++) {
    tempChar= obj.value.substring(i,i+1);
    if (strRef.indexOf(tempChar,0)==-1) {
      if (errMsg == null || errMsg =="")
        alert("输入数据不是数字,请检查");
      else
        alert(errMsg);
      if(obj.type=="text")
        obj.focus();
      return false;
    }else{
      if(i>0){
        if(obj.value.substring(i,i+1)=="-"){
          if (errMsg == null || errMsg =="")
            alert("输入数据不是数字,请检查");
          else
            alert(errMsg);
          if(obj.type=="text")
            obj.focus();
          return false;
        }
      }
    }
  }
  return true;
}
/**
*email检测,格式为 xxx@xxx.xxx
*/
function isEmail(tempstr) {
	var p=/^\s*\w+\@\w+(\.\w+)+\s*$/i;
	if (p.test(tempstr)) return true;
  return false;
}
/**
*email检测,格式为xxx@xxx.xxx 或 xxx@xxx
*/
function chkEmail(tempstr){
	if (/^[^\s\.\/\?&"']+@([^\s\.\/\?&"'@]+\.)*[^\s\.\/\?&"'@]+$/ig.test(tempstr))	return true;
	return false;
}

/**
 *判断是否是钱的形式

 *@param pObj   对象
 *@param errMsg 错误小心
 *@param decLen 小数位数长度,默认为2
*/
function isMoney(pObj,errMsg,decLen){
  var obj = eval(pObj);
  strRef = "1234567890.";
  if(isEmpty(pObj)) return true;
  for (i=0;i<obj.value.length;i++) {
    tempChar= obj.value.substring(i,i+1);
    if (strRef.indexOf(tempChar,0)==-1) {
      if (errMsg == null || errMsg ==""){
        alert("输入数据不是钱币,请检查");
      }else{
        alert(errMsg);
       }
      //if(obj.type=="text"){
      obj.focus();
      //}  
      return false;
    }else{
      tempLen=obj.value.indexOf(".");
      if(tempLen!=-1){
        strLen=obj.value.substring(tempLen+1,obj.value.length);
        var xlen=2;
        if(decLen!=null && decLen!=""){
          xlen=decLen;
        }
        if(strLen.length>xlen){
          if (errMsg == null || errMsg ==""){
            alert("输入数据不是钱币,请检查");
          }else{
            alert(errMsg);
          }
          //if(obj.type=="text"){
          obj.focus();
          //}
          return false;
        }
      }
    }
  }
  return true;
}

/**
*判断是否是闰年

*/
function isLeapYear(year) {
  if((year%4==0&&year%100!=0)||(year%400==0)) {
    return true;
  }
  return false;
}

/**
 *判断日期格式是否正确
 */
function isDate(checktext){
  var datetime;
  var year,month,day;
  var gone,gtwo;
  if(trim(checktext.value)!=""){
    datetime=trim(checktext.value);
    if(datetime.length==10){
      year=datetime.substring(0,4);
      if(isNaN(year)==true){
        alert("请输入日期!格式为(yyyy-mm-dd) \n例(2001-01-01)!");
        checktext.focus();
        return false;
      }
      gone=datetime.substring(4,5);
      month=datetime.substring(5,7);
      if(isNaN(month)==true){
        alert("请输入日期!格式为(yyyy-mm-dd) \n例(2001-01-01)!");
        checktext.focus();
        return false;
      }
      gtwo=datetime.substring(7,8);
      day=datetime.substring(8,10);
      if(isNaN(day)==true){
        alert("请输入日期!格式为(yyyy-mm-dd) \n例(2001-01-01)!");
        checktext.focus();
        return false;
      }
      if((gone=="-")&&(gtwo=="-")){
        if(month<1||month>12) {
          alert("月份必须在01和12之间!");
          checktext.focus();
          return false;
        }
        if(day<1||day>31){
          alert("日期必须在01和31之间!");
          checktext.focus();
          return false;
        }else{
          if(month==2){
            if(isLeapYear(year)&&day>29){
              alert("二月份日期必须在01到29之间!");
              checktext.focus();
              return false;
            }
            if(!isLeapYear(year)&&day>28){
              alert("二月份日期必须在01到28之间!");
              checktext.focus();
              return false;
            }
          }
          if((month==4||month==6||month==9||month==11)&&(day>30)){
            alert("在四,六,九,十一月份 \n日期必须在01到30之间!");
            checktext.focus();
            return false;
          }
        }
      }else{
        alert("请输入日期!格式为(yyyy-mm-dd) \n例(2001-01-01)");
        checktext.focus();
        return false;
      }
    }else{
      alert("请输入日期!格式为(yyyy-mm-dd) \n例(2001-01-01)");
      checktext.focus();
      return false;
    }
  }else{
    return true;
  }
  return true;
}


/**
 *判断时间格式是否正确
 */
function isTime(checktext){
  var time;
  var hour,minute,second;
  var gone,gtwo;
  var msg="请输入时间!格式为(hh:mm:ss) \n例(08:30:01)!";
  if(trim(checktext.value)!=""){
    time=trim(checktext.value);
    if(time.length==8){
      hour=time.substring(0,2);
      if(isNaN(hour)==true){
        alert(msg);
        checktext.focus();
        return false;
      }
      gone=time.substring(2,3);
      minute=time.substring(3,5);
      if(isNaN(minute)==true){
        alert(msg);
        checktext.focus();
        return false;
      }
      gtwo=time.substring(5,6);
      second=time.substring(6,8);
      if(isNaN(second)==true){
        alert(msg);
        checktext.focus();
        return false;
      }
      if((gone==":")&&(gtwo==":")){
        if(hour<0||hour>23) {
          alert("小时必须在00和23之间!");
          checktext.focus();
          return false;
        }
        if(minute<0||minute>59){
          alert("分钟必须在00和59之间!");
          checktext.focus();
          return false;
        }
        if(second<0||second>59){
          alert("秒钟必须在00和59之间!");
          checktext.focus();
          return false;
        }
      }else{
        alert(msg);
        checktext.focus();
        return false;
      }
    }else{
      alert(msg);
      checktext.focus();
      return false;
    }
  }else{
    return true;
  }
  return true;
}

/**
 * 判断日期时间格式是否正确
 */
function isDateTime(checktext){
	var reg = /^(\d+)-(\d{1,2})-(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/;
	var datetime;
	var msg="请输入日期时间!格式为(yyyy-mm-dd hh:mm:ss) \n例(2006-8-17 08:30:01)!";
	if(trim(checktext.value)!=""){
		datetime = trim(checktext.value);
	  	r = datetime.match(reg);
	  	if(r == null){
	  		alert(msg);
      		checktext.focus();
	  		return false;
	  	}else{
	  		return true;
	  	}
	}else{
		return true;
	}
}

/**弹出窗口*/
function openWin(theUrl,winName,args){
  window.open(theUrl,winName,args);
}

/**
* 删除某个下拉列表的所有下拉项
*/
function delAllItem(listObj){
  var i=0;
  var num=listObj.length;
  for (i=num;i>-1;i--){
    listObj.options[i]=null;
  }
}

/**
* 根据设定的值选中某个列表的某项

* @param listObj 列表对象
* @param value 比较的值ֵ

*/
function selectItem(listObj,value){
  for(i=0;i<listObj.options.length;i++){
    if(listObj.options[i].value==value){
      listObj.options[i].selected=true;
      return;
    }
  }
}

/**
* 根据设定的条件把源列表框选中的项拷贝到目标列表框
* @param srcListObj 源列表框对象
* @param destListObj 目标列表框对象

* @param maxCount 最大可拷贝行数,不设置或0时表示没限制
* @param alertMsg 当达到最大拷贝数时的提示信息
*/
function copyToAndDel(srcListObj,destListObj,maxCount,alertMsg){
  var text="";
  var value="";
  if(maxCount==null || maxCount=="") maxCount=0;
  var n=destListObj.length;
  if(maxCount!=0 && n>=maxCount) {
    alert(alertMsg==null?"最多只能选择"+maxCount+"条记录!":alertMsg);
    return;
  }
  for(i=0;i<srcListObj.length;i++){
    if(srcListObj.options[i].selected){
      text=srcListObj.options[i].text;
      value=srcListObj.options[i].value;
      if(maxCount!=0 && n>=maxCount){
		alert(alertMsg==null?"最多只能选择"+maxCount+"条记录!":alertMsg);
        break;
      }
      destListObj.options[n++]=new Option(text,value);
      srcListObj.options[i--]=null;
    }
  }
}

/**
* @param inputString  需要处理的字符串

* @param fromString  需要被代替的字符串
* @param toString  用来代替的字符串
*/
function replace(inputString, fromString, toString) {
  var temp = inputString;
  if (fromString == "") {
    return inputString;
  }
  if (toString.indexOf(fromString) == -1) {
    while (temp.indexOf(fromString) != -1) {
      var toTheLeft = temp.substring(0, temp.indexOf(fromString));
      var toTheRight = temp.substring(temp.indexOf(fromString) +
                                      fromString.length, temp.length);
      temp = toTheLeft + toString + toTheRight;
    }
  } else {
    var midStrings = new Array("~", "`", "_", "^", "#");
    var midStringLen = 1;
    var midString = "";
    while (midString == "") {
      for (var i = 0; i < midStrings.length; i++) {
        var tempMidString = "";
        for (var j = 0; j < midStringLen; j++) {
          tempMidString += midStrings[i];
        }
        if (fromString.indexOf(tempMidString) == -1) {
          midString = tempMidString;
          i = midStrings.length + 1;
        }
      }
    }
    while (temp.indexOf(fromString) != -1) {
      var toTheLeft = temp.substring(0, temp.indexOf(fromString));
      var toTheRight = temp.substring(temp.indexOf(fromString) +
                                      fromString.length, temp.length);
      temp = toTheLeft + midString + toTheRight;
    }
    while (temp.indexOf(midString) != -1) {
      var toTheLeft = temp.substring(0, temp.indexOf(midString));
      var toTheRight = temp.substring(temp.indexOf(midString) +
                                      midString.length, temp.length);
      temp = toTheLeft + toString + toTheRight;
    }
  }
  return temp;
}

/**
* 设置当天的起止时间

* @param startObj  开始时间的输入框

* @param endObj    结束时间的输入框
*/
function thisDay(startObj,endObj){
  tempDate = new Date();
	dateStr = tempDate.getYear() + "-" + ((tempDate.getMonth() + 1).toString().length<2 ? "0"+(tempDate.getMonth() + 1) : (tempDate.getMonth() + 1)) + "-" + ( tempDate.getDate().toString().length<2 ? "0"+tempDate.getDate() : tempDate.getDate());
  startObj.value=dateStr;
	endObj.value=dateStr;
}
/**
* 设置本周的起止时间

* @param startObj  开始时间的输入框

* @param endObj    结束时间的输入框
*/
function thisWeek(startObj,endObj){
	tempDate = new Date();
	weekDays = tempDate.getDay();
	startObj.value = tempDate.getYear() + "-" + ((tempDate.getMonth() + 1).toString().length<2 ? "0"+(tempDate.getMonth() + 1) : (tempDate.getMonth() + 1)) + "-" + ( (tempDate.getDate() - weekDays).toString().length<2 ? "0"+(tempDate.getDate() - weekDays) : (tempDate.getDate() - weekDays));
	endObj.value = tempDate.getYear() + "-" + ((tempDate.getMonth() + 1).toString().length<2 ? "0"+(tempDate.getMonth() + 1) : (tempDate.getMonth() + 1)) + "-" + ( tempDate.getDate().toString().length<2 ? "0"+tempDate.getDate() : tempDate.getDate());
}
/**
* 设置本月的起止时间

* @param startObj  开始时间的输入框

* @param endObj    结束时间的输入框
*/
function thisMonth(startObj,endObj){
	tempDate = new Date();
	startStr = tempDate.getYear() + "-" + ( (tempDate.getMonth() + 1).toString().length<2 ? "0"+(tempDate.getMonth() + 1) : (tempDate.getMonth() + 1)) + "-" + "01";
	endStr = tempDate.getYear() + "-" + ((tempDate.getMonth() + 1).toString().length<2 ? "0"+(tempDate.getMonth() + 1) : (tempDate.getMonth() + 1)) + "-" + ( tempDate.getDate().toString().length<2 ? "0"+tempDate.getDate() : tempDate.getDate());
	startObj.value = startStr;
	endObj.value = endStr;
}


/**
* 保存Cookie信息
* @param name cookie名

* @param value 值 ֵ
*/
function saveCookie(name,value,path){
  var defPath="/";
  if(path!=null){
    defPath=path;
  }
  document.cookie=name+"="+value+";path="+defPath+";";
}

/**
* 获得Cookie的值

* 如果存在cookie,那么返回该值,不存在则返回'false'字符串

* @param name cookie名

*/
function getCookieValue(name) {
  //如果没有cookie则返回'false'或者取得值并返回该值

  if(document.cookie == ''){
    return 'false';
  }else{
    return unescape(readCookie(name));
  }
}

/**
* 获得Cookie的值

* 如果存在则返回cookie的值,不存在则返回false
* @param name cookie名

*/
function readCookie(name) {
  var firstChar,lastChar;
  var theBigCookie = document.cookie;
  //如果在中间能找到就先取中间值

  firstChar = theBigCookie.indexOf("; "+name+"=");
  if(firstChar == -1){
    firstChar = theBigCookie.indexOf(name+"=");
  }else{
    firstChar = firstChar + 2;// skip '; '
  }
  if(firstChar != -1) {				 
    firstChar += name.length + 1;// skip 'name' and '='.
    lastChar = theBigCookie.indexOf(';', firstChar);
    if(lastChar == -1){
      lastChar = theBigCookie.length;
    }
    return theBigCookie.substring(firstChar, lastChar);
  }else	{// If there was no cookie, return false.
    return false;
  }
}

/**
* 全选 列表
* chk      true/false
* frm  要搜索的窗口
* listName 要选择的对象的名称
*/
function doSelAll(chk,frm,listName){
  for (var i=0;i<frm.elements.length;i++){
    var e = frm.elements[i];
    if (e.name==listName){
      e.checked =chk;
    }
  }
}

/**
* 转到某个URL,如果不指定url,那么就后退
* @param url 
*/
function gotoUrl(url){
  if(url==null || trim(url)==""){
    history.go(-1);
  }else{
    window.location.href=url;
  }
}

/**
* 后退到某个URL,如果有父框架存在,那么功能等于gotoUrl()
* 如果不存在父窗口,那么直接关闭窗口

* @param url  
*/
function back(url){
  if(window.parent.frames.length>0){
    gotoUrl(url);
  }else{
    window.close();
  }
}

/**
*校验两个日期的先后

*返回值:
*如果其中有一个日期为空,校验通过,          返回true
*如果起始日期早于等于终止日期,校验通过			  返回true
*如果起始日期晚于终止日期,                  返回false
*/
function checkDateEarlier(strStart,strEnd)
{
    if (( strStart == "" ) || ( strEnd == "" ))
        return true;
    var arr1 = strStart.split("-");
    var arr2 = strEnd.split("-");
    var date1 = new Date(arr1[0],parseInt(arr1[1].replace(/^0/,""),10) - 1,arr1[2]);
    var date2 = new Date(arr2[0],parseInt(arr2[1].replace(/^0/,""),10) - 1,arr2[2]);
    if(arr1[1].length == 1)
        arr1[1] = "0" + arr1[1];
    if(arr1[2].length == 1)
        arr1[2] = "0" + arr1[2];
    if(arr2[1].length == 1)
        arr2[1] = "0" + arr2[1];
    if(arr2[2].length == 1)
        arr2[2]="0" + arr2[2];
    var d1 = arr1[0] + arr1[1] + arr1[2];
    var d2 = arr2[0] + arr2[1] + arr2[2];
    if(parseInt(d1,10) > parseInt(d2,10))
       return false;
    else
       return true;
}
/**
*计算两个日期之间相差几个月

*/
function DateDiff(beginDate,endDate)
{	            
    var Month1,Month2,iMonths;  
    Month1=parseInt(beginDate.split("-")[0],10)*12+parseInt(beginDate.split("-")[1],10);
    Month2=parseInt(endDate.split("-")[0],10)*12+parseInt(endDate.split("-")[1],10);
	iMonths = Month2-Month1;				
	return iMonths; 	    
  }
/**
* 最大化主框架

*/
function maxFrame(){ 
  try{        
    top.maxMainFrame()           
  }catch(ee){
    alert(ee);
  }
}
/*
*判断配置单项下拉框是否选中数据
*/
function isSelectPzdx()
{
	if(document.all.slt_pzdx.value == "")
	{
		alert("请您先选择一个配置单项名称,如果要新建请填写相应名称,另存为。");
		return false;
	}
	else
	{
		return true;
	} 
}


function getDate()
{
   var myDate = new Date();
  myDate.getYear(); //获取当前年份(2位)
  myDate.getFullYear(); //获取完整的年份(4位,1970-????)
  myDate.getMonth(); //获取当前月份(0-11,0代表1月)
  myDate.getDate(); //获取当前日(1-31)
  myDate.getDay(); //获取当前星期X(0-6,0代表星期天)
  myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)
  myDate.getHours(); //获取当前小时数(0-23)
  myDate.getMinutes(); //获取当前分钟数(0-59)
  myDate.getSeconds(); //获取当前秒数(0-59)
  myDate.getMilliseconds(); //获取当前毫秒数(0-999)
  myDate.toLocaleDateString(); //获取当前日期
  var mytime=myDate.toLocaleTimeString(); //获取当前时间
  var curtim=myDate.getFullYear()+'-'+ (myDate.getMonth()+1)+'-'+ myDate.getDate()+" "+mytime;
  return curtim;
}
funct
ion getCurrTime()
  {
   return new Date().getFullYear()+'-'+ (new Date().getMonth()+1)+'-'+ new Date().getDate()+" "+new Date().toLocaleTimeString();
  }

 

//替换所有字符
String.prototype.replaceAll = function(s1,s2) { 
          return this.replace(new RegExp(s1,"gm"),s2); 
}
function replaces(str,old,new)
{
  return str.replaceAll(old,new);
}

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics