js的一些常用法

1:判斷屏幕大小的
window.screen.width
2:
for (var i=0;i<temp.length-1;i++){
 newOpt=new Option(temp[i][0],temp[i][1]);      
 document.Form1.DropDownList3.options[i]=newOpt;
}
for(var i=0;i<objAry.length;i++)

obj.add(new Option(objAry[i][0]+'-'+objAry[i][1] ,objAry[i][0]));
}
兩種都可以的

        table_tab=" <table align='left' width='100%' border='0' cellspacing='1' cellpadding='1'>"
       for(var ji=1 ;ji<FORM.OPT_AND_DESC.length;ji++)
       {
        stropt_desc=FORM.OPT_AND_DESC[ji].value.trim()
        
        strJECT_OPT=stropt_desc.substring(2,stropt_desc.indexOf('^^'));
        strJECT_DESC=stropt_desc.substring(stropt_desc.indexOf('^^')+2,stropt_desc.indexOf('##'));
        
        strVOL_COUNT=stropt_desc.substring(stropt_desc.indexOf('##')+2,stropt_desc.indexOf('$$'));
        strVOL_COUNT_UNIT=stropt_desc.substring(stropt_desc.indexOf('$$')+2,stropt_desc.indexOf('**'));
        strCONTENT_COUNT=stropt_desc.substring(stropt_desc.indexOf('**')+2,stropt_desc.indexOf('@@'));
        strCONTENT_COUNT_UNIT=stropt_desc.substr(stropt_desc.indexOf('@@')+2);
         strCOUNT_UNIT="";
        if((strVOL_COUNT_UNIT.trim()!='')&&(strCONTENT_COUNT_UNIT.trim()!='')){
         strCOUNT_UNIT=strVOL_COUNT+strVOL_COUNT_UNIT.substr(2)+strCONTENT_COUNT+strCONTENT_COUNT_UNIT.substr(2);
        }else if(strVOL_COUNT_UNIT.trim()!=''){
         strCOUNT_UNIT=strVOL_COUNT+strVOL_COUNT_UNIT.substr(2);
        }else if(strCONTENT_COUNT_UNIT.trim()!=''){
         strCOUNT_UNIT=strCONTENT_COUNT+strCONTENT_COUNT_UNIT.substr(2);
        }
     strNUM=FORM.OPT_AND_DESC[ji].text.trim();
     
     t[rowcount]=" <tr NAME='TR"+rowcount+"' id='TR"+rowcount+"' STYLE='cursor:hand;' class='clsGrdBody' onclick=__grdRow_OnClick('#95DCF9');getdata('"+strNUM+"'); >"
     //t[rowcount]=t[rowcount]+" <TD WidTH='15%'>"+rowcount+"</TD>"
     t[rowcount]=t[rowcount]+" <TD WidTH='25%'>"+strJECT_OPT+"</TD>"
     t[rowcount]=t[rowcount]+" <TD WidTH='45%'><a title='"+strJECT_DESC+"'>"+strJECT_DESC.substring(0,20)+"</a></TD>"
     t[rowcount]=t[rowcount]+" <TD WidTH='30%'>"+strCOUNT_UNIT+"</TD>"
     t[rowcount]=t[rowcount]+" </tr>"
     
     rowcount=rowcount+1;
       }
       for (i=1;i<rowcount;i++){
        if((t[i].trim()!='')&&(t[i]!='undefined'))
     t_d = t_d + t[i];
    }
      Query_display_data.innerHTML=table_tab + t_d + "</table>";
3:釋放數組空間
var arrEntryValue = new Array();
//將新元素添加到一數組中,并返回數組的新長度值。
var newleng=arrEntryValue.push(vEntryValue)
// purpose :去掉數組的空值
//parameter: arry1:需要去掉空值的數組,intIndex:需要去掉空值的數組的下標
function arr_Qeue(arry1,intIndex){
 if (arry1.length>0){
  for(var i=intIndex;i<arry1.length-1;i++){
   arry1[i]=arry1[i+1]
  }
  //移除數組中的最後一個元素,並返回該元素
  arry1.pop();
 }
 return arry1   
}
//purpose:當存檔成功之後,釋放所有數組的空間
//  以便繼續進行新增,修改,刪除,存檔工作
//parameter : arry1:需要釋放空間的數組
function Release_Space(arry1)
{
 if(arry1.length>0)
 {
  for (var i=arry1.length-1;i<arry1.length;i--)
  { 
    if(i==-1)
    {
    break;
   }
   arry1.pop()
  }
 }
 return arry1
}
//判斷欄位值是否為數字
function Check_Num_Field(ObjName)
{
 var LV_Value = ObjName.value.trim();

    if ((LV_Value != '') && (!isNumeric(LV_Value)))
    {
        alert("請輸入數字!");
        ObjName.focus();
        ObjName.select();
       ObjName.value="";
        return false;
    }
    return true;
}
//判斷欄位值是否是正整數
function Check_Int_Field_Plus(objF)
{
 if(Check_Int_Field(objF))
 {
  var intV=objF.value*1;
  if(intV<0)
  {
   alert("欄位值不可小於0!")
   objF.value="";
   objF.focus();
   objF.select();
   return false;
  }
  objF.value=intV;  
 }
}
//判斷欄位值是否是整數
function Check_Int_Field(ObjName)
{
 var LV_Value =ObjName.value.trim();
    if ((LV_Value != '') && (!isInteger(LV_Value)))
    {
        alert("請輸入整數!");
       ObjName.value="";
        ObjName.focus();
        return false;
    }
    return true;
}
//判斷是否為數字
function isNumeric(strNum)
{
 var strCheckNum = strNum + "";
 if(strCheckNum.length < 1) //空字符串
  return false;
 if(isNaN(strCheckNum)) //不是數值
  return false;

 return true;
}
//判斷是否是整數
function isInteger(strNum)
{
 var strCheckNum = strNum*1 + "";
 if(strCheckNum.length < 1) //空字符串
  return false;
 if(isNaN(strCheckNum)) //不是數值
  return false;
 if(parseFloat(strCheckNum) > parseInt(strCheckNum)) //不是整數
  return false;
 return true;
}

//判斷日期是否合法
//輸入參數:vobjName 日期對象
//     bolChDate 是否為民國日期,0-公元日期,1-民國日期
function Check_Date_Field(vobjName,bolChDate)
{
 var strDay,strMonth,strYear,strCYear,strTimeAry
 var strDate,StandDate,strWeekName,datDate,intNum,strChangeDate
 var resStr="";
 
 strDate=vobjName.value.trim(); 
 if(strDate=="") return; //若日期為空值, 則不做
 //如果是民國日期先轉換為公元日期
 if(bolChDate==1)
 {
  if(strDate.indexOf("-")>0)
   strDate=(strDate.substring(0,strDate.indexOf("-"))*1+1911).toString()+(strDate.substring(strDate.indexOf("-"),strDate.length)).toString()
  else
   if(strDate.indexOf(".")>0)
    strDate=(strDate.substring(0,strDate.indexOf("."))*1+1911).toString()+(strDate.substring(strDate.indexOf("."),strDate.length)).toString()
   else
    if(strDate.indexOf("/")>0)
     strDate=(strDate.substring(0,strDate.indexOf("/"))*1+1911).toString()+(strDate.substring(strDate.indexOf("/"),strDate.length)).toString()
    else
     strDate=(strDate.substring(0,strDate.length-4)*1+1911).toString()+(strDate.substring(strDate.length-4,strDate.length)).toString()
 }
 //設定日期為準模式 "1997/5/6"
 //XXXX-XX-XX
 if(strDate.indexOf("-")!=0)
 {  resStr="";
  for(var i=0;i<strDate.length;i++)
   resStr=resStr +((strDate.substring(i,i+1)).replace('-','/'));
  strDate=resStr;
 }
 //XXXX.XX.XX
 if(strDate.indexOf(".")!=0)
 { resStr="";
  for(var i=0;i<strDate.length;i++)
   resStr=resStr +((strDate.substring(i,i+1)).replace('.','/'));
  strDate=resStr;
 }
 //XXXXXXXX
 if(strDate.indexOf("/")<=0)
 { strDate=(strDate+'000000000a').substring(0,8)
   strDate=strDate.substring(0,4)+"/"+strDate.substring(4,6)+ "/"+strDate.substring(6,8);
 }
 //判斷日期是否合法
 if(!IsDate(strDate))
 {
  alert("請輸入日期, 格式為年月日!!") ;
  vobjName.value="";
  vobjName.focus();
  return;
 }
 if(bolChDate==1)
 {
  strYear='000'+(strDate.substring(0,4)*1-1911).toString()
  strYear=strYear.substring(strYear.length-3,strYear.length)
  strDate=strYear.toString()+(strDate.substring(4,strDate.length)).toString()
 }
  vobjName.value=strDate;
}
//判斷日期是否合法
function IsDate(str)
{
 var r = str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/); 
 if(r==null)return false; 
 var d= new Date(r[1], r[3]-1, r[4]); 
 return (d.getFullYear()==r[1] && (d.getMonth()+1)==r[3] && d.getDate()==r[4]);
}
//字符串去空格的正則式
String.prototype.trim=function()
{
 return this.replace(/(^\s*)|(\s*$)/g,'');
}
//檢查時間欄位值的合法性
function Check_Time_Field(objtime,strH) 
{
 var strTime
 var resStr="";
 var vH
 var vM
 var vS
 strTime=objtime.value.trim();
 if(strTime=="") return; //若時間為空值, 則不做 
 //設定時間為準模式 "12:00:00" 
 //XX.XX.XX
 resStr="";
 for(var i=0;i<strTime.length;i++)
  resStr=resStr +((strTime.substring(i,i+1)).replace('.',':'));
 strTime=resStr;
 //XX XX XX
 resStr="";
 for(var i=0;i<strTime.length;i++)
  resStr=resStr +((strTime.substring(i,i+1)).replace(' ',':'));
 strTime=resStr;
 //XX-XX-XX
 resStr="";  
 for(var i=0;i<strTime.length;i++)
  resStr=resStr+((strTime.substring(i,i+1)).replace('-',':'));
 strTime=resStr; 
 //XXXXXXXX
 if(strTime.indexOf(":")<=0)
 {
  if(strTime.length==1)
   strTime="0"+""+strTime+":00:00";
  else{
   strTime=(strTime+'000000').substring(0,6)
    strTime=strTime.substring(0,2)+":"+strTime.substring(2,4)+ ":"+strTime.substring(4,6);
   }
 }
 //XX:XX
 if(strTime.lastIndexOf(":")>0 && strTime.lastIndexOf(":")<=2)
  strTime=strTime+':00'; 
  
 var strTimeArry2=strTime.split(":"); 
 vH=strTimeArry2[0];
 vM=strTimeArry2[1];
 vS=strTimeArry2[2];
 if(strTimeArry2.length==2)
  vS="00";
 if(!(isNaN(vH)||isNaN(vM)||isNaN(vS)))
 {
  if(vH>=24) vH=vH-24;
  if(vM>=60) vM=vM-60;
  if(vS>=60) vS=vS-60; 
  vH="00"+(vH*1).toString()
  vH=vH.substring(vH.length-2,vH.length)
  vM="00"+(vM*1).toString()
  vM=vM.substring(vM.length-2,vM.length)
  vS="00"+(vS*1).toString()
  vS=vS.substring(vS.length-2,vS.length)
 } 
 strTime=vH+":"+vM+":"+vS;
 
//對時間進行判斷
 if(!IsTime(strTime))
 {
  alert("輸入時間錯誤!") ;
  objtime.value="";  
  return;
 } 
 if(strH==0)
  strTime=strTime.substring(0,5);
 objtime.value=strTime; 
}
//檢查時間合法性
function IsTime(strTime)
{
 var strHours;
 var strMinutes;
 var strSeconds; 
 var strTimeArry3=strTime.split(":"); //以":"為界分裝到數組中
 if(strTimeArry3.length!=3)//如果不是時分秒標准形式不判斷  
  return false;
 strHours=strTimeArry3[0];
 strMinutes=strTimeArry3[1];
 strSeconds=strTimeArry3[2]
 if(isNaN(strHours)||isNaN(strMinutes)||isNaN(strSeconds))
  return false;
 if(strTimeArry3[0].length>2||strTimeArry3[1].length>2||strTimeArry3[2].length>2)
  return false;
 if(strHours>23||strHours<0||strMinutes>59||strMinutes<0||strSeconds>59||strSeconds<0)
  return false;
 return true;
}
//改變text的樣式(0表無陰影)
function disable(txtname,val)

  if (txtname!=null && txtname!="" && txtname!=" "){
     if (val==0){         
        if (txtname.type=='text'){
           txtname.style.borderStyle="groove"
           txtname.readOnly=true
        }else{       
           txtname.disabled=true
        }     
     }else{    
        if (txtname.type=='text'){
           txtname.style.borderStyle=""
           txtname.readOnly=false
        }else{
           txtname.disabled=false
        }   
     }
  }
}

posted on 2006-04-11 22:01  freeliver54  阅读(514)  评论(0编辑  收藏  举报

导航