<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    風人園

    弱水三千,只取一瓢,便能解渴;佛法無邊,奉行一法,便能得益。
    隨筆 - 99, 文章 - 181, 評論 - 56, 引用 - 0
    數據加載中……

    javascript常用到的一些方法(ZT)

    javascript常用到的一些方法
    2006-07-11 ?? chenxh ?? ?? 點擊: 0
    javascript常用到的一些方法

    function openBigWin(temUrl)
    {
    ?var Wid;
    ?var Hei;
    ?var Type;

    ?Wid=700;
    ?Hei=500;
    ?Type=\"_blank\";

    ?window.open (temUrl,Type, \"scrollbars=yes,resizable=yes,toolbar=1,top=10,left=130,width=\"+Wid+\",height=\"+ Hei );
    ?return true;
    }

    ?

    function openMiddleWin(temUrl)
    {


    ? ?var Wid=500;
    ??????? var Hei=400;

    ?var left=(screen.width-Wid)/2;
    ?var top=(screen.height-Hei)/2;

    ?if(top>100)
    ??top=100;

    ?var newWin=window.open(temUrl,\"_blank\", \"scrollbars=yes,resizable=yes,top=\"+top+\",toolbar=0,menubar=1,left=\"+left+\",width=\"+Wid+\",height=\"+ Hei );

    ?return newWin;
    }

    ?

    function openWin(temUrl,Type,Wid,Hei)
    {
    ?window.open (temUrl,Type, \"scrollbars=no,resizable=yes,top=10,toolbar=0,left=130,width=\"+Wid+\",height=\"+ Hei );
    ?return true;
    }

    ?

    function openNewWin(temUrl,left,top,Wid,Hei)
    {

    ?left=(screen.width-Wid)/2;
    ?top=(screen.height-Hei)/2;

    ?if(top>100)
    ??top=100;

    ?var newWin=window.open(temUrl,\"_blank\", \"scrollbars=yes,resizable=yes,top=\"+top+\",toolbar=0,menubar=1,left=\"+left+\",width=\"+Wid+\",height=\"+ Hei );

    ?return newWin;
    }

    ?

    function openNewWin2(winName,temUrl,Wid,Hei)
    {

    ?var left;
    ?var top;


    ?left=(screen.width-Wid)/2;
    ?top=(screen.height-Hei)/2;

    ?if(top>100)
    ??top=100;

    ?var newWin=window.open(temUrl,winName, \"scrollbars=yes,resizable=yes,top=\"+top+\",toolbar=0,menubar=1,left=\"+left+\",width=\"+Wid+\",height=\"+ Hei );
    ?newWin.focus();

    ?return newWin;
    }

    function openWin(temUrl,Type,Wid,Hei)
    {
    ?Wid=700;
    ?Hei=500;
    ?Type=\"_blank\";

    ?window.open (temUrl,Type, \"scrollbars=yes,resizable=yes,top=10,toolbar=1,left=130,width=\"+Wid+\",height=\"+ Hei );
    ?return true;
    }

    ?

    ?

    function isAlpha(s){

    ?for (var i=0; i<s.length; i++){

    ??????? var Char = s.charAt(i);
    ??????? if ((Char < \"a\" || Char > \"z\") && (Char < \"A\" || Char > \"Z\"))
    ??????????? return false;
    ??? }
    ??? return true;
    }

    ?


    function isNumeric(p){

    ?if (p == \"\")
    ??return false;

    ? var l = p.length;
    ? var count=0;

    ? for(var i=0; i<l; i++) {
    ??? var digit = p.charAt(i);
    ??? if(digit == \".\" ){
    ???? ++count;
    ????? if(count>1) return false;
    ???? }else if(digit < \"0\" || digit > \"9\")
    ???? return false;
    ?}

    ? return true;
    }

    ?

    function isEmail(email){


    ?invalidChars = \" /;,:{}[]|*%$#!()`<>?\";
    ?if (email == \"\") {
    ??return false;
    ? }
    ?for (i=0; i< invalidChars.length; i++){

    ??badChar = invalidChars.charAt(i) ;
    ??if (email.indexOf(badChar,0) > -1){
    ???return false;
    ?? }
    ? }
    ?atPos = email.indexOf(\"@\",1);
    ?if (atPos == -1){
    ?? return false;
    ? }
    ?if (email.indexOf(\"@\", atPos+1) != -1) {
    ?? return false;
    ? }

    ?periodPos = email.indexOf(\".\",atPos)
    ?if(periodPos == -1){
    ??? return false;
    ???? }

    ?if ( atPos +2 > periodPos) {
    ?? return false;
    ? }

    ?if ( periodPos +3 > email.length){
    ?? return false;
    ?}

    ?return true;
    }

    ?


    // pageNO :this pageNO
    //nextPage: first,last,next,up,number(eg:777777)


    function goPage(searchForm,pageNO,pageCounter,nextPage){

    ?var url;
    ?var customPageNO;

    ?//alert(\"hello\");

    ?url=searchForm.action+\"&pageNO=\";


    ?if (nextPage==\"first\"){


    ??if (pageNO==1){
    ???alert(\"已經是第一頁!\");
    ???return false;
    ??}else{
    ???pageNO=1;
    ???url=url+pageNO;

    ???searchForm.action=url;
    ???searchForm.submit();
    ??}


    ?}else ?if (nextPage==\"up\"){


    ??if (pageNO==1){
    ???alert(\"已經是第一頁!\");
    ???return false;
    ??}else{
    ???pageNO=pageNO-1;
    ???url=url+pageNO;

    ???searchForm.action=url;
    ???searchForm.submit();
    ??}

    ?

    ?}else ?if (nextPage==\"next\"){


    ??if (pageNO==pageCounter){
    ???alert(\"已經是最后一頁\");
    ???return false;
    ??}else{

    ???pageNO=parseInt(pageNO)+1+\"\";
    ???url=url+pageNO;

    ?

    ???searchForm.action=url;
    ???searchForm.submit();


    ??}


    ?}else ?if (nextPage==\"last\"){

    ??//alert(\"pageNO:\" +pageNO + \"? pageCounter:\"+pageCounter);

    ??if (pageNO==pageCounter){
    ???alert(\"已經是最后一頁\");
    ???return false;
    ??}else{

    ???pageNO=pageCounter
    ???url=url+pageNO;


    ???searchForm.action=url;
    ???searchForm.submit();


    ??}

    ?}else if (isNumeric(nextPage) ){


    ??if (pageNO==nextPage){

    ???alert(\"已經是第\" +pageNO +\"頁!\");
    ???return false;

    ??}

    ??pageNO=nextPage;

    ??if (pageNO>=1 && pageNO<=pageCounter){

    ???url=url+pageNO;


    ???searchForm.action=url;
    ???searchForm.submit();

    ??}else{

    ???alert(\"頁面超出了范圍!\");
    ???return false;


    ??}

    ?

    ?}
    ?return false;
    }


    /*
    ? 文件名: check_data.js
    ? 功? 能: 主要進行數據校驗
    ? 更? 新: 金永俊 2004年4月16日
    ? ?? 戴? 嘉 2004.05.11
    */

    //-------------------------------
    //? 函數名:isNull(i_field,i_value)
    //? 功能介紹:檢查輸入是否為非空
    //? 參數說明:數據項,輸入的對應值
    //? 返回值? :0-非空,1-為空
    //-------------------------------
    function isNull(i_field,i_value)
    {
    ?if (i_value==null || jstrim(i_value)==\"\")
    ?{
    ??? return 1;
    ?}
    ?else
    ?{
    ???? alert(\"\'\"+i_field+\"\' 要求為空!\");
    ???? return 0;
    ?}
    }

    //-------------------------------
    //? 函數名:notNull(i_field,i_value)
    //? 功能介紹:檢查輸入是否為非空
    //? 參數說明:數據項,輸入的對應值
    //? 返回值? :1-非空,0-為空
    //-------------------------------
    function notNull(i_field,i_value)
    {

    ?if (i_value==null || jstrim(i_value)==\"\")
    ?{
    ???? alert(\"\'\"+i_field+\"\' 不可為空!\");
    ???? return 0;
    ?}

    ?return 1;


    }

    //-------------------------------
    //? 函數名:isNum(i_field,i_value)
    //? 功能介紹:檢查輸入字符串是否為數字
    //? 參數說明:數據項,輸入的對應值
    //? 返回值? :1-是數字,0-非數字
    //-------------------------------
    function isNum(i_field,i_value)
    {
    ??? if (notNull(i_field,i_value)==0)
    ??? {return 0;
    ??? }

    ??? re=new RegExp(\"[^0-9]\");
    ??? var s;
    ??? if(s=i_value.match(re))
    ???? {
    ??????? alert(\"\'\"+i_field+\"\' 中含有非法字符 \'\"+s+\"\' !\");
    ??????? return 0;
    ???? }
    ??? return 1;
    }

    //-------------------------------
    //? 函數名:isGreatNum(i_field,i_value,i_value1)
    //? 功能介紹:檢查輸入字符串是否是數字并且大于i_value1
    //? 參數說明:數據項,輸入的對應值,比較數值
    //? 返回值? :1-給定的i_value為數字且大于i_value1,
    //?????????? 0-非數字或者i_value小于等于i_value1
    //
    //? 戴嘉 2004.05.11
    //-------------------------------
    function isGreatNum(i_field,i_value,i_value1)
    {
    ??? //校驗輸入的是否為數值
    ??? if(isNum(i_field,i_value)==0)
    ??? ?return 0;
    ??? else
    ??? {
    ??????? if(i_value<=i_value1)
    ??????? ?return 0;
    ??? }

    ??? return 1;
    }

    //-------------------------------
    //? 函數名:isSmallNum(i_field,i_value,i_value1)
    //? 功能介紹:檢查輸入字符串是否是數字并且小于i_value1
    //? 參數說明:數據項,輸入的對應值,比較數值
    //? 返回值? :1-給定的i_value為數字且小于i_value1,
    //?????????? 0-非數字或者i_value大于等于i_value1
    //
    //? 戴嘉 2004.05.11
    //-------------------------------
    function isSmallNum(i_field,i_value,i_value1)
    {
    ??? //校驗輸入的是否為數值
    ??? if(isNum(i_field,i_value)==0)
    ??? ?return 0;
    ??? else
    ??? {
    ??????? if(i_value>=i_value1)
    ??????? ?return 0;
    ??? }

    ??? return 1;
    }


    //-------------------------------
    //? 函數名:isDate(i_field,thedate)
    //? 功能介紹:校驗字符串是否為日期格式
    //? 參數說明:數據項,輸入的字符串
    //? 返回值? :0-不是,1--是
    //-------------------------------

    function isDate(i_field,thedate)
    {
    ? if (!(thedate.length==8 || thedate.length==10))
    ?? {??? alert(\"\'\"+i_field+\"\'日期格式不對,\\n要求為yyyymmdd或yyyy-mm-dd!\");
    ???? return 0;
    ?? }
    ? if (thedate.length==8)
    ? {
    ? ?thedate=thedate.substr(0,4)+\"-\"+thedate.substr(4,2)+\"-\"+thedate.substr(6,2);
    ? }

    ??? var reg = /^(\\d{1,4})(-)(\\d{1,2})\\2(\\d{1,2})$/;
    ??? var r = thedate.match(reg);

    ???? if (r==null)
    ??? {
    ?????? alert(\"請輸入正確的\'\"+i_field+\"\' !\");
    ?????? return 0;

    ??? }
    ??? var d= new Date(r[1],r[3]-1,r[4]);
    ??? var newStr=d.getFullYear()+r[2]+(d.getMonth()+1)+r[2]+d.getDate()
    ??? var newDate=r[1]+r[2]+(r[3]-0)+r[2]+(r[4]-0)
    ??? //alert(\"----------r:\"+r+\" d:\"+d+\" newStr:\"+newStr+\" newDate:\"+newDate);
    ??? if (newStr==newDate)
    ???????? {
    ????????? return 1;
    ???????? }
    ???? alert(\"\'\"+i_field+\"\'日期格式不對,\\n要求為yyyymmdd或yyyy-mm-dd!\");
    ???? return 0;
    }

    //-------------------------------
    //? 函數名:changeDate(thedate)
    //? 功能介紹:日期yyyymmdd轉換成yyyy-mm-dd格式
    //? 參數說明:輸入日期
    //? 返回值? :0-不是,1--是
    //-------------------------------

    function changeDate(thedate)
    {

    ?if (thedate.length==8)
    ? {
    ? ?thedate=thedate.substr(0,4)+\"-\"+thedate.substr(4,2)+\"-\"+thedate.substr(6,2);
    ? }

    ???? return thedate;

    }

    //-------------------------------
    //? 函數名:isLength(i_field,i_length,i_value)
    //? 功能介紹:檢查輸入值是否為指定長度
    //? 參數說明:數據項,要求長度,值
    //? 返回值? :1-是指定長度,0-不是
    //-------------------------------
    function isLength(i_field,i_length,i_value)
    {//? alert(\"---長度要求:\"+i_length+\" \"+i_value.length);
    ?if (!(i_value.length==i_length))
    ?{
    ???? alert(\"\'\"+i_field+\"\' 的長度要求為\' \"+i_length+\" \'!\");
    ???? return 0;
    ?}
    ?return 1;
    }

    //-------------------------------
    //? 函數名:dyLength(i_field,i_length,i_value)
    //? 功能介紹:檢查輸入值是否達到指定長度以上
    //? 參數說明:數據項,要求長度,值
    //? 返回值? :1-符合,0-不是
    //-------------------------------
    function dyLength(i_field,i_length,i_value)
    { //alert(\"---長度要求:\"+i_length+\" \"+i_value.length);
    ?if (i_value.length<i_length)
    ?{
    ???? alert(\"\'\"+i_field+\"\' 的長度至少為 \'\"+i_length+\"\'!\");
    ???? return 0;
    ?}
    ?return 1;
    }

    //-------------------------------
    //? 函數名:xyLength(i_field,i_length,i_value)
    //? 功能介紹:檢查輸入值不要超過指定長度
    //? 參數說明:數據項,要求長度,值
    //? 返回值? :1-符合,0-不是
    //-------------------------------
    function xyLength(i_field,i_length,i_value)
    { //alert(\"---長度要求:\"+i_length+\" \"+i_value.length);
    ?if (i_value.length>i_length)
    ?{
    ???? alert(\"\'\"+i_field+\"\' 的長度最長為 \'\"+i_length+\"\' !\");
    ???? return 0;
    ?}
    ?return 1;
    }

    //-------------------------------
    //? 函數名:check_hm(標簽,長度,i_value)
    //? 參數說明:標簽,長度,值。
    //? 功能介紹:檢查輸入號碼字符串長度是否滿足;是否全數字。
    //? 返回值? :1-是,false-不是
    //-------------------------------
    function check_hm(i_field,i_length,i_value)
    {

    ??? if (isLength(i_field,i_length,i_value)==0)
    ??? {
    ??? ?return 0;
    ??? }
    ??? if (isNum(i_field,i_value)==0)
    ??? {
    ??? ?return 0;
    ??? }
    return 1;
    }

    //-------------------------------
    //? 函數名:check_yzbm(i_value)
    //? 參數說明:郵政編碼值。
    //? 功能介紹:檢查郵政編碼是否是6位長數字。
    //? 返回值? :1-是,false-不是
    //-------------------------------
    function check_yzbm(i_value)
    {

    ??? if (isLength(\"郵政編碼\",\"6\",i_value)==0)
    ??? {
    ??? ?return 0;
    ??? }
    ??? if (isNum(\"郵政編碼\",i_value)==0)
    ??? {
    ??? ?return 0;
    ??? }
    return 1;
    }//-------------------------------
    //? 函數名:check_zjhm(zjmc,obj)
    //? 參數說明:證件名稱,證件號碼。
    //? 功能介紹:檢查身份證號碼合法性。
    //?????? 對身份證檢查是否為全數字;出生日期格式是否正確;是否<=18,<=70;校驗碼檢查
    //? 返回值? :1-是,0-不
    //-------------------------------
    function check_zjhm(zjmc,zjhm)
    {

    ? var birthday=\"\";
    ? var zjhm1=\"\";
    ? var zjhm2=\"\";

    ? var s=\"\";
    ? if (notNull(\"證件號碼\",zjhm)==0)? { return 0;? }
    ? if(zjmc==\"A\")?? //身份證號碼
    ?? {
    ?????? if(!(zjhm.length==15 || zjhm.length==18) )
    ????? {
    ??????? alert(\"身份證長度不對,請檢查!\") ;
    ?????????????? return 0;
    ????? }
    ??????? zjhm1=zjhm;
    ??????? if (zjhm.length==18)
    ??????????? {
    ??????????????? zjhm1=zjhm.substr(0,17)?;
    ??????????????? zjhm2=zjhm.substr(17,1);
    ??????????? }

    ???????? re=new RegExp(\"[^0-9]\");
    ? if(s=zjhm1.match(re))
    ???? {
    ???????? alert(\"輸入的值中含有非法字符\'\"+s+\"\'請檢查!\");
    ???????? return 0;
    ???????????? }
    ??????? //取出生日期
    ??????? if(zjhm.length==15 )
    ??????????? {
    ?????????????? birthday=\"19\"+zjhm.substr(6,6);
    ??????????? }
    ???????? else
    ??????????? {
    ??????????? ?re=new RegExp(\"[^0-9X]\");
    ?????????????? if(s=zjhm2.match(re))???? //18位身份證對末位要求數字或字符
    ?????????????? {
    ?????????????????? alert(\"輸入的值中含有非法字符\'\"+s+\"\'請檢查!\");
    ?????????????????? return 0;
    ??????????????? }
    ??????????????? birthday=zjhm.substr(6,8);
    ??????????? }
    ?????????? birthday=birthday.substr(0,4)+\"-\"+birthday.substr(4,2)+\"-\"+birthday.substr(6,2)
    ????????? //alert(\"birthday\"+birthday)

    ????????? if(isDate(\"證件號碼\",birthday)==0)? //檢查日期的合法性
    ????????? {
    ???????????? return 0;
    ????????? }

    ???????? var nl=cal_years(birthday);//求年齡

    ???????? //if (nl-0<18 || nl>70)
    ???????? if (nl-0<18)
    ???? {
    ???????????? alert(\"年齡要求 18歲以上 ,當前 \"+nl+\" !\");
    ??????????? return 0;
    ?????????? }
    ????????? if(zjhm.length==18 )
    ????????? {
    ????????? ?return(sfzCheck(zjhm));? //對18位長的身份證進行末位校驗
    ????????? }
    ?????? }
    else
    ?{if (zjhm.length>17){

    ??????? alert(\"非‘居民身份證’長度不得超過17位,請檢查!\") ;
    ?????????????? return 0;
    ?}
    ?}

    ?? return 1;
    ?? }
    function check_zjhmNoAge(zjmc,zjhm)
    {

    ? var birthday=\"\";
    ? var zjhm1=\"\";
    ? var zjhm2=\"\";

    ? var s=\"\";
    ? if (notNull(\"證件號碼\",zjhm)==0)? { return 0;? }
    ? if(zjmc==\"A\")?? //身份證號碼
    ?? {
    ?????? if(!(zjhm.length==15 || zjhm.length==18) )
    ????? {
    ??????? alert(\"身份證長度不對,請檢查!\") ;
    ?????????????? return 0;
    ????? }
    ??????? zjhm1=zjhm;
    ??????? if (zjhm.length==18)
    ??????????? {
    ??????????????? zjhm1=zjhm.substr(0,17)?;
    ??????????????? zjhm2=zjhm.substr(17,1);
    ??????????? }

    ???????? re=new RegExp(\"[^0-9]\");
    ? if(s=zjhm1.match(re))
    ???? {
    ???????? alert(\"輸入的值中含有非法字符\'\"+s+\"\'請檢查!\");
    ???????? return 0;
    ???????????? }
    ??????? //取出生日期
    ??????? if(zjhm.length==15 )
    ??????????? {
    ?????????????? birthday=\"19\"+zjhm.substr(6,6);
    ??????????? }
    ???????? else
    ??????????? {
    ??????????? ?re=new RegExp(\"[^0-9X]\");
    ?????????????? if(s=zjhm2.match(re))???? //18位身份證對末位要求數字或字符
    ?????????????? {
    ?????????????????? alert(\"輸入的值中含有非法字符\'\"+s+\"\'請檢查!\");
    ?????????????????? return 0;
    ??????????????? }
    ??????????????? birthday=zjhm.substr(6,8);
    ??????????? }
    ?????????? birthday=birthday.substr(0,4)+\"-\"+birthday.substr(4,2)+\"-\"+birthday.substr(6,2)
    ????????? //alert(\"birthday\"+birthday)

    ????????? if(isDate(\"證件號碼\",birthday)==0)? //檢查日期的合法性
    ????????? {
    ???????????? return 0;
    ????????? }


    ????????? if(zjhm.length==18 )
    ????????? {
    ????????? ?return(sfzCheck(zjhm));? //對18位長的身份證進行末位校驗
    ????????? }
    ?????? }
    else
    ?{if (zjhm.length>17){

    ??????? alert(\"非‘居民身份證’長度不得超過17位,請檢查!\") ;
    ?????????????? return 0;
    ?}
    ?}

    ?? return 1;
    ?? }

    function id15to18(zjhm)
    {


    ?var strJiaoYan =new? Array(\"1\", \"0\", \"X\", \"9\", \"8\", \"7\", \"6\", \"5\", \"4\", \"3\", \"2\");
    ?var intQuan =new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1);
    ?var ll_sum=0;
    ?var i;
    ?var ls_check;
    ?zjhm = zjhm.substring(0, 6) + \"19\" + zjhm.substring(6);
    ?for (i=0;i<=16;i++){
    ??ll_sum=ll_sum+(parseFloat(zjhm.substr(i,1)))*intQuan[i];
    ?}
    ?ll_sum = ll_sum % 11;
    ?zjhm=zjhm + strJiaoYan[ll_sum];
    ?return zjhm;
    }
    //-------------------------------
    //? 函數名? :check_sg(i_value)
    //? 參數說明:身高。
    //? 功能介紹:檢查身高是否為數字;是否>=100,<=250
    //? 返回值? :1-是,0-不是
    //-------------------------------

    function check_sg(i_value)
    {
    ??????? if(isNum(\"身高\",i_value)==0)? //檢查身高是否為數字
    ??????? {
    ?????????????? return 0;
    ??????? }
    ??????? else
    ??????? {
    ? if ((i_value-0)<100 ||(i_value-0)>250)
    ? {
    ??????? alert(\"\'身高\'合理范圍應在 100--250 !\");
    ?????????????? return 0;
    ? }
    ??????? }
    ? return 1;
    }

    //-------------------------------
    //? 函數名? :check_sl(i_value)
    //? 參數說明:視力。
    //? 功能介紹:檢查視力是否為數字;是否>=4.9,<=5.5
    //? 返回值? :1-是,false-不是
    //-------------------------------

    function check_sl(i_value)
    {
    ??? var reg = /^(\\d{1,1})(\\.)(\\d{1,1})$/;

    if (document.all[\"zsl\"].value.length==2)
    ?{
    ?document.all[\"zsl\"].value=document.all[\"zsl\"].value.substr(0,1)+\".\"+document.all[\"zsl\"].value.substr(1,1);
    ?}
    ?if (document.all[\"ysl\"].value.length==2)
    ?{
    ??? document.all[\"ysl\"].value=document.all[\"ysl\"].value.substr(0,1)+\".\"+document.all[\"ysl\"].value.substr(1,1);
    ?}
    ??? var r = document.all[\"zsl\"].value.match(reg);
    ??? var r1 = document.all[\"ysl\"].value.match(reg);
    ??? if(r==null)
    ??? ?{
    ???????? alert(\"左視力的格式應為:x.x !\")
    ???????? return 0;
    ?????? }
    ??? if(r1==null)
    ??? ?{
    ???????? alert(\"右視力的格式應為:x.x !\")
    ???????? return 0;
    ?????? }

    ??? if ((document.all[\"zsl\"].value-0)<4.9 || (document.all[\"zsl\"].value-0)>5.5)
    ??? {
    ???????? alert(\"\'左視力\'應在 4.9--5.5 范圍!\");
    ???????? return 0;
    ??? }
    ??? if ((document.all[\"ysl\"].value-0)<4.9 || (document.all[\"ysl\"].value-0)>5.5)
    ??? {
    ???????? alert(\"\'右視力\'應在 4.9--5.5 范圍!\");
    ???????? return 0;
    ??? }
    ?return 1;
    }

    //-------------------------------
    //? 函數名:isHg(bsl,tl,sz,qgjb)
    //? 功能介紹:辨色力,聽力,上肢,軀干頸部是否合格
    //? 參數說明:辨色力,聽力,上肢,軀干頸部
    //? 返回值? :1-符合申請,0-不符合
    //-------------------------------

    function isHg(bsl,tl,sz,qgjb)
    {//alert(bsl+tl+sz+qgjb)
    ??? if (!(bsl==1))
    ?????? {
    ?????? ?? alert(\"\'辨色力\'不合格者不能申請!\");
    ????????? return 0;
    ?????? }
    ??? if (!(tl==1))
    ?????? {
    ?????? ?? alert(\"\'聽力\'不合格者不能申請!\");
    ????????? return 0;
    ?????? }
    ??? if (!(sz==1))
    ?????? {
    ?????? ?? alert(\"\'上肢\'不合格者不能申請!\");
    ????????? return 0;
    ?????? }
    ??? if (!(qgjb==1))
    ?????? {
    ?????? ?? alert(\"\'軀干頸部\'不合格者不能申請!\");
    ????????? return 0;
    ?????? }
    ?if((document.all[\"yxz\"].value)==0)
    ?{
    ?? alert(\"右下肢必須合格!\")
    ?? document.all.yxz.focus();
    ?? return 0;
    ?}
    ???? return 1;
    }

    //-------------------------------
    //? 函數名:sfzCheck(hm)
    //? 功能介紹:對18位長的身份證進行末位校驗
    //? 參數說明:身份證號碼
    //? 返回值? :1-符合,0-不符合
    //-------------------------------

    function sfzCheck(hm)
    {

    ????? var w=new Array();
    ????? var ll_sum;
    ????? var ll_i;
    ????? var ls_check;


    ? if(hm.length==15) //長度15,直接返回true
    ??return true;

    ?? if(hm.length!=15 && hm.length!=18){

    ??alert(\"身份證號碼長度不正確\");
    ??return false;

    ?? }

    ????? w[0]=7;
    ????? w[1]=9;
    ????? w[2]=10;
    ????? w[3]=5;
    ????? w[4]=8;
    ????? w[5]=4;
    ????? w[6]=2;
    ????? w[7]=1;
    ????? w[8]=6;
    ????? w[9]=3;
    ????? w[10]=7;
    ????? w[11]=9;
    ????? w[12]=10;
    ????? w[13]=5;
    ????? w[14]=8;
    ????? w[15]=4;
    ????? w[16]=2;
    ???? ll_sum=0;

    ???? for (ll_i=0;ll_i<=16;ll_i++)
    ???? {?? //alert(\"ll_i:\"+ll_i+\" \"+hm.substr(ll_i,1)+\"w[ll_i]:\"+w[ll_i]+\"? ll_sum:\"+ll_sum);
    ??????? ll_sum=ll_sum+(hm.substr(ll_i,1)-0)*w[ll_i];

    ???? }
    ???? ll_sum=ll_sum % 11;


    ???? switch (ll_sum)
    ????? {
    ??????? case 0 :
    ??????????? ls_check=\"1\";
    ??????????? break;
    ??????? case 1 :
    ??????????? ls_check=\"0\";
    ??????????? break;
    ??????? case 2 :
    ??????????? ls_check=\"X\";
    ??????????? break;
    ??????? case 3 :
    ??????????? ls_check=\"9\";
    ??????????? break;
    ??????? case 4 :
    ??????????? ls_check=\"8\";
    ??????????? break;
    ??????? case 5 :
    ??????????? ls_check=\"7\";
    ??????????? break;
    ??????? case 6 :
    ??????????? ls_check=\"6\";
    ??????????? break;
    ??????? case 7 :
    ??????????? ls_check=\"5\";
    ??????????? break;
    ??????? case 8 :
    ??????????? ls_check=\"4\";
    ??????????? break;
    ??????? case 9 :
    ??????????? ls_check=\"3\";
    ??????????? break;
    ??????? case 10 :
    ??????????? ls_check=\"2\";
    ??????????? break;
    ????? }

    ????? if (hm.substr(17,1) != ls_check)
    ????? {
    ??????????? alert(\"身份證校驗錯誤!------ 末位應該:\"+ls_check+\" 實際:\"+hm.substr(hm.length-1,1));
    ??????????? return 0;
    ???? }
    return 1
    }

    function? comm_check(){
    if (document.all[\"xm\"].value.length<2)
    {
    document.all[\"xm\"].focus();
    alert(\"\'姓名\'長度至少兩漢字!\");
    return 0;
    ?}
    if (document.all[\"lxdh\"].value.length<6)
    {
    document.all[\"lxdh\"].focus();
    alert(\"\'聯系電話\'長度至少6位!\");
    return 0;
    ?}
    return 1;
    }

    //-------------------------------
    //? 函數名? :check_zjcx(s_value,s_cx_dm)
    //? 參數說明:準駕車型字符串,合法的準駕車行字符串數組。
    //? 功能介紹:檢查車型輸入是否正確,只檢查是否包含合法的準駕車行字符串,重復、次序顛倒不認為是錯誤
    //? 返回值? :1-包含合法的準駕車行,0-不合法
    //
    //? 戴嘉 2004.05.12
    //-------------------------------
    function check_zjcx(s_value,s_cx_dm)
    {
    ? ?//合法的準駕車行字符串數組
    ?//var s_cx_dm=new Array(\"A1\",\"A2\",\"A3\",\"B1\",\"B2\",\"C1\",\"C2\",\"C3\",\"C4\",\"D\",\"E\",\"F\",\"M\",\"N\",\"P\");
    ??????? //字符串數組的長度
    ??????? var s_cx_input;?//存放需要檢驗的字符串
    ?var i_pos;?//查找子串定位
    ??????? var i;

    ??????? s_cx_input=s_value;
    ?for(i in s_cx_dm)?//對合法準駕車行字符串數組輪循
    ?{
    ??do
    ??{
    ???i_pos=s_cx_input.indexOf(s_cx_dm[i]);?//是否包含當前車型
    ???if(i_pos!=-1)?//包含
    ???{
    ????????????????????????? ?//去掉找到的子串
    ????s_cx_input=s_cx_input.slice(0,i_pos)+s_cx_input.slice(i_pos+s_cx_dm[i].length);
    ???}
    ??}while(i_pos!=-1);?//找不到當前車型子串,進入下一車型子串查找
    ?}

    ?if(s_cx_input.length==0)?//輸入字符串包含的都是合法的車型子串(全部被去掉了)
    ??return 1;
    ?else?//輸入字符串還包含有非法的字符串
    ??return 0;
    }


    //-------------------------------
    //? 函數名:DateAddMonth(strDate,iMonths)
    //? 功能介紹:獲得日期加上iMonths月數后的日期
    //? 參數說明:strDate 日期
    //? 返回值? :無返回值
    //-------------------------------
    function DateAddMonth(strDate,iMonths){
    ?? var thisYear = parseFloat(strDate.substring(0,4));
    ?? var thisMonth = parseFloat(strDate.substring(5,7));
    ?? var thisDate = parseFloat(strDate.substring(8,10));
    ?? var d =thisYear *12 + thisMonth + iMonths;

    ?? var newMonth = d % 12;
    ?? if (newMonth==0) {
    ?? ?newMonth=12;
    ?? }
    ?? var newYear = (d - newMonth) /12;
    ?? var newDate = thisDate;
    ?? var iMonthLastDate=getMonthLastDate(newYear,newMonth)
    ?? if (newDate>iMonthLastDate) newDate=iMonthLastDate;
    ?? var newDay=\"\";

    ?? newDay += newYear;
    ?? if (newMonth<10) {
    ?? ?newDay +=\"-\" + \"0\" + newMonth;
    ?? }else{
    ?? ?newDay +=\"-\" + newMonth;
    ?? }

    ?? if (newDate<10) {
    ?? ?newDay +=\"-\" + \"0\" + newDate;
    ?? }else{
    ?? ?newDay +=\"-\" + newDate;
    ?? }
    ?? return(newDay);??????????????????????????????? // 返回日期。
    }

    function getMonthLastDate(iYear,iMonth){
    ?var dateArray= new Array(31,28,31,30,31,30,31,31,30,31,30,31);
    ?var days=dateArray[iMonth-1];
    ?if ((((iYear % 4 == 0) && (iYear % 100 != 0)) || (iYear % 400 == 0)) && iMonth==2){
    ??days=29;
    ?}
    ?return days;
    }

    var keyvalue=\"\";
    var srcStr=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\";
    var objName=\"\";
    function findCode(event,obj)
    {
    ?if (objName != obj.name){
    ??objName=obj.name;
    ??keyvalue=\"\";
    ?}
    ??????? if (event.keyCode==13 || event.keyCode==9 ) {
    ????????? keyvalue=\"\";
    ????????? return true;
    ??????? }

    ?//if(srcStr.indexOf(String.fromCharCode(event.keyCode))!=-1)
    ?//?keyvalue=\"\";
    ?keyvalue=keyvalue+String.fromCharCode(event.keyCode).toUpperCase();
    ?//alert(keyvalue);
    ?for(var i=0;i<obj.options.length;i++)
    ?{
    ??if(obj.options[i].value.indexOf(keyvalue)!=-1)
    ??{
    ???obj.value=obj.options[i].value;
    ??????????????????????? if (obj.options[i].value==keyvalue){
    ????objName=\"\"
    ???}
    ???return true;
    ??}
    ?}
    }
    function findName(event,obj)? //根據代碼取名稱
    {
    ?if (objName != obj.name){
    ??objName=obj.name;
    ??keyvalue=\"\";
    ?}
    ??????? if (event.keyCode==13 || event.keyCode==9 ) {
    ????????? keyvalue=\"\";
    ????????? return true;
    ??????? }

    ?//if(srcStr.indexOf(String.fromCharCode(event.keyCode))!=-1)
    ?//?keyvalue=\"\";
    ?keyvalue=keyvalue+String.fromCharCode(event.keyCode).toUpperCase();
    ?//alert(keyvalue);
    ?//alert(obj.options.length);
    ?for(var i=0;i<obj.options.length;i++)
    ?{
    ??//alert(obj.options[i].text);

    ??if(obj.options[i].text.indexOf(keyvalue)!=-1)
    ??{
    ???obj.value=obj.options[i].value;
    ???return true;
    ??}
    ?}
    }
    //自動清除輸入框中的空格
    function ignoreSpaces(string) {
    var temp = \"\";
    string = \'\' + string;
    splitstring = string.split(\" \"); //雙引號之間是個空格;
    for(i = 0; i < splitstring.length; i++)
    temp += splitstring[i];
    return temp;
    }


    /*
    ? 文件名: function.js
    ? 功? 能: 常用的功能庫
    ? 功能塊:

    ? 更? 新: 金永俊 2004年4月16日
    ?? 戴嘉 2004.05.20
    */


    var todaystr;
    todaystr=new Date();


    //-------------------------------
    //? 函 數 名:cal_years(rq)
    //? 功能介紹:計算指定日期到今天是多少年.
    //? 參數說明:日期
    //? 返??? 回:年數
    //-------------------------------

    function cal_years(rq)
    {
    var years;
    //var dDate = new Date();? //系統日期(系統日期應該大于rq)
    var dDate=todaystr;
    var month1= dDate.getMonth()+1;
    var year1= dDate.getFullYear();
    var day1=dDate.getDate()
    var year2= rq.substr(0,4);
    var month2= rq.substr(5,2);
    var day2=rq.substr(8,2);
    //alert(\"-----------dDate-\"+dDate+\" year1\"+year1+\" month1\"+month1+\" day1\"+day1);
    ???? years = year1 - year2 - 0;
    ???? if (month2 > month1)?? //月份未到,years-1
    ???? {
    ?????? years = years - 1;
    ???? }
    ???? else
    ???? {
    ?????? if ( (month1 == month2) && (day2 > day1))? //月份到了,但日未到,years-1
    ?????? {
    ???????? years = years - 1;
    ?????? }
    ???? }
    //alert(\"-----------years-\"+years);
    return years;
    }

    //-------------------------------
    //? 函 數 名:cal_years1(rq1,rq2)
    //? 功能介紹:計算指定日期到今天是多少年.(rq1-rq2)
    //? 參數說明:日期1,日期2
    //? 返??? 回:年數
    //-------------------------------

    function cal_years1(rq1,rq2)
    {
    var years;
    var year1= rq1.substr(0,4);
    var month1= rq1.substr(5,2);
    var day1=rq1.substr(8,2);
    var year2= rq2.substr(0,4);
    var month2= rq2.substr(5,2);
    var day2=rq2.substr(8,2);
    //alert(\"-----------dDate-\"+dDate+\" year1\"+year1+\" month1\"+month1+\" day1\"+day1);
    ???? years = year1 - year2 - 0;
    ???? if (month2 > month1)?? //月份未到,years-1
    ???? {
    ?????? years = years - 1;
    ???? }
    ???? else
    ???? {
    ?????? if ( (month1 == month2) && (day2 > day1))? //月份到了,但日未到,years-1
    ?????? {
    ???????? years = years - 1;
    ?????? }
    ???? }
    //alert(\"-----------years-\"+years);
    return years;
    }
    //-------------------------------
    //? 函 數 名:cal_days(rq1,rq2)
    //? 功能介紹:計算兩個日期間隔天數(要求rq2>=rq1).
    //? 參數說明:日期1,日期2
    //? 返??? 回:天數
    //-------------------------------

    function cal_days(rq1,rq2)
    {? var d, s, t, d1 , d2, s1 , s2;
    ?? var DyMilli = 24 * 60 * 60 * 1000;? //一天的毫秒數
    ?? //d = new Date();
    ?? d=todaystr
    ?? s = d.getTime();? //系統日期與 1970 年 1 月 1 日午夜間全球標準時間 的毫秒數

    ???? var days;
    ???? //系統日期、年、月、日
    ???? //var dDate = new Date();
    ???? var dDate=todaystr
    ???? var month= dDate.getMonth()+1;
    ???? var year= dDate.getFullYear();
    ???? var day=dDate.getDate();
    ???????? d=new Date(year,month-1,day);
    ???????? s = d.getTime()
    ???? var month1;
    ???? var month2;
    ???? var year1;
    ???? var year2;
    ???? var day1;
    ???? var day2;


    ???? if (rq1==\"\")
    ???? {
    ???? ?s1=s;
    ????? ?month1= month;
    ???? ?year1= year;
    ???? ?day1= day;
    ??? }
    ???? else
    ???? {
    ??????? year1= rq1.substr(0,4);
    ??????? month1= rq1.substr(5,2);
    ??????? day1=rq1.substr(8,2);
    ??????? d1=new Date(year1,month1-1,day1);
    ??????? s1=d1.getTime();
    ???? }

    ???? if (rq2==\"\")
    ???? {
    ???? ?s2=s;
    ???? ?month2= month;
    ???? ?year2= year;
    ???? ?day2= day;
    ???? }
    ???? else
    ???? {
    ??????? year2= rq2.substr(0,4);
    ??????? month2= rq2.substr(5,2);
    ??????? day2=rq2.substr(8,2);
    ??????? d2=new Date(year2,month2-1,day2);
    ??????? s2=d2.getTime();
    ???? }
    ???? //alert(\"rq1:\"+rq1+\" rq2:\"+rq2+\" y1:\"+year1+\" y2:\"+year2+\" m1:\"+month1+\" m2:\"+month2+\" d1:\"+day1+\" d2:\"+day2);
    ???? days=Math.round((s2 - s1) / DyMilli);;
    ???? //alert(\"days:\"+days);
    return days;
    }

    ?

    //-------------------------------
    //? 函 數 名:get_checkbox(get_item)
    //? 功能介紹:取復選框的內容.
    //? 參數說明:復選框的數組名
    //? 返??? 回:復選框的值
    //-------------------------------
    function get_checkbox(get_item)
    {
    var get_item_content
    get_item_content=\"\"
    var item_length=get_item.length
    //alert(item_length)
    for(var i=0;i<item_length;i++)
    {
    ? if(get_item.item(i).checked)
    ? {
    ?? //alert(get_item.item(i).value)
    ? get_item_content=get_item_content+get_item.item(i).value
    ? }
    }
    return get_item_content;
    }


    //-------------------------------
    //? 函 數 名:set_checkbox(set_item,s_value)
    //? 功能介紹:設置復選框數組的內容.
    //? 參數說明:復選框的控件數組對象,表示狀態的字符串(checkbox的value值)
    //? 返??? 回:設置的復選框數量
    //
    //? 戴嘉 2004.05.11
    //-------------------------------
    function set_checkbox(set_item,s_value)
    {
    ??????? var i,j;?//循環計數器,i-控件數組循環,j-字符串值位置控制

    ?//輪循狀態字符串
    ?for(j=0;j<s_value.length;j++)
    ??????? {
    ??????? ?//輪循控簡數組
    ???????? for(i=0;i<set_item.length;i++)
    ??????? ?{
    ??????? ??if(set_item.item(i).value==s_value.substr(j,1))
    ??????????????? ?{
    ??????????????? ??set_item.item(i).checked=true;
    ??????????????????????????????? break;
    ??????????????? ?}
    ??????? ?}
    ??????? }

    ?return j;
    }

    ?

    //-------------------------------
    //? 函 數 名:bulidXzqh(obj,Opt_name,Opt_value)
    //? 功能介紹:構建新的所屬轄區下拉列表
    //? 參數說明:日期1,日期2
    //? 返??? 回:
    //-------------------------------

    function bulidXzqh(obj,Opt_name,Opt_value)
    {
    ? var n1
    ? if(Opt_name.length>0)
    ? {

    ??? n1=document.createElement(\"OPTION\")
    ??? n1.value=Opt_value
    ??? n1.text=Opt_name
    ??? obj.add(n1)
    ??? var i=obj.length-1
    ??? obj.options[i].selected=true
    ?}

    }

    ?

    ?

    ?

    //----------構建下拉列表--------------

    function buildList(get_xml_id,put_id,view_type)
    {

    var xmldoc,theNode,code1Node;
    var get_list,get_list_code,get_list_value
    var str1=\"document.all.\"+get_xml_id+\".XMLDocument\"
    xmldoc=eval(str1)
    xmldoc.async=false
    //xmldoc=eval(\"document.all.\"+get_xml_id+\".XMLDocument\")

    //取類型
    var str2=\"xmldoc.getElementsByTagName(\\\"Codes\\\")\"

    //get_list=eval(\"xmldoc.getElementsByTagName(\\\"\"+get_type_name +\"\\\")\")
    get_list=eval(str2)

    //get_list_code=get_list.item(0).getElementsByTagName(\"code\")
    //get_list_value=get_list.item(0).getElementsByTagName(\"value\")

    if(view_type==null || view_type==\"\"){view_type=\"0\"}?? //缺省

    //顯示名稱,保存名稱,view_type==\"2\"
    if(view_type==\"2\")
    {

    for(var i=0;i<get_list.length;i++)
    {
    var str3=\"document.all[\\\"\"+put_id+\"\\\"].options[i]=new Option(get_list.item(i).lastChild.text,get_list.item(i).lastChild.text)\"
    //alert(str3)
    eval(str3)
    //eval(\"document.all[\\\"\"+put_id+\"\\\"].options[i]=new Option(get_list_value.item(i).text,get_list_code.item(i).text\")
    }
    }

    //顯示時帶代碼,view_type==\"1\"

    if(view_type==\"1\")
    {

    for(var i=0;i<get_list.length;i++)
    {
    var str3=\"document.all[\\\"\"+put_id+\"\\\"].options[i]=new Option(get_list.item(i).firstChild.text+get_list.item(i).lastChild.text,get_list.item(i).firstChild.text)\"
    //alert(str3)
    eval(str3)
    //eval(\"document.all[\\\"\"+put_id+\"\\\"].options[i]=new Option(get_list_value.item(i).text,get_list_code.item(i).text\")
    }
    }
    if(view_type==\"0\")
    {
    //顯示時不帶代碼,view_type==\"0\"

    for(var i=0;i<get_list.length;i++)
    {
    var str3=\"document.all[\\\"\"+put_id+\"\\\"].options[i]=new Option(get_list.item(i).lastChild.text,get_list.item(i).firstChild.text)\"
    //alert(str3)
    eval(str3)
    //eval(\"document.all[\\\"\"+put_id+\"\\\"].options[i]=new Option(get_list_value.item(i).text,get_list_code.item(i).text\")
    }
    }


    }
    //----------建立復選列表(準駕必備和提交資料)--------------
    function build_checkbox(get_xml_id,put_id,checkbox_name)
    {
    ? var xmldoc,theNode,code1Node;
    ? var get_list,get_list_code,get_list_value
    ? var str1=\"document.all.\"+get_xml_id+\".XMLDocument\"
    ? xmldoc=eval(str1)
    ? var htmlstr=\"\"
    //取類型
    var str2=\"xmldoc.getElementsByTagName(\\\"Codes\\\")\"
    get_list=eval(str2)
    ?? for(var i=0;i<get_list.length;i++)
    ? {
    ?? htmlstr=htmlstr+\"<input type=\\\"checkbox\\\"? name=\\\"\"+checkbox_name+ \"\\\"?? value=\\\"\"+get_list.item(i).firstChild.text+\"\\\">\"+get_list.item(i).lastChild.text
    ? }
    var str3=\"document.all.\"+put_id+\".innerHTML=htmlstr\"
    //alert( htmlstr)
    eval(str3)


    }

    //----------整理提交資料項目--------------
    function get_checkbox1(get_item,put_id)
    {
    var get_item_content
    get_item_content=\"\"
    var item_length=get_item.length
    //alert(item_length)
    for(var i=0;i<item_length;i++)
    {
    ? if(get_item.item(i).checked)
    ? {
    ?? //alert(get_item.item(i).value)
    ? get_item_content=get_item_content+get_item.item(i).value
    ? }
    }
    alert(get_item_content);
    var the_str=\"document.all[\\\"\"+put_id+\"\\\"].value=get_item_content\"
    //document.all[\"get_tjzl\"].value=get_item_content
    eval(the_str)

    }


    /*多項選擇checkbox的逆過程
    box_value? 為字符串
    box_name?? checkbox的name
    2003-05-10
    */
    function back_checkbox(box_name,box_value)
    {
    var box_length
    var item_value
    var obj_str
    var obj
    obj_str=\"document.all[\\\"\"+box_name+\"\\\"]\"
    obj=eval(obj_str)
    box_length=obj.length
    for(var i=0;i<box_length;i++)
    ?? {
    ??? item_value=obj.item(i).value
    ??? if(box_value.indexOf(item_value)>-1)
    ???? {
    ????? obj.item(i).checked=true
    ???? }
    ?? }

    }

    function decode_from_xml(xml_id,the_code)??? //代碼翻譯
    {
    ?var de_code=\"\"
    ?var str,obj
    ?str=\"document.all[\\\"\"+xml_id+\"\\\"]\"
    ?obj=eval(str)
    ? while(!obj.recordset.EOF)
    ? {
    ??? var code=obj.recordset(\"code\")
    ??? if(code==the_code)
    ??? {
    ??? de_code=new String(obj.recordset(\"Value\"))
    ??? }
    ??? obj.recordset.moveNext();

    }
    ? obj.recordset.moveFirst();
    ? return? de_code;

    }


    function decode_self(the_code)
    {

    ?var de_code
    ?de_code=\"\"


    ?if(the_code==\"1\")
    ?{
    ??? de_code=\"合格\";
    ?}
    ?else
    ?{

    ?? de_code=\"不合格\";
    }

    ? return? de_code;

    }


    //----------構建可管理車型下拉列表--------------

    function glcx_list(get_xml_id,glcx,put_id)
    {

    var xmldoc,theNode,code1Node;
    var get_list,get_list_code,get_list_value
    var str1=\"document.all.\"+get_xml_id+\".XMLDocument\"
    //alert(str1)
    xmldoc=eval(str1)
    xmldoc.async=false
    //alert(xmldoc.xml)


    //取類型
    var str2=\"xmldoc.getElementsByTagName(\\\"Codes\\\")\"
    get_list=eval(str2)

    //alert(\"AAA:\"+get_list.length)


    var j=0

    for(var i=0;i<get_list.length;i++)
    {

    ? if(glcx.indexOf(get_list.item(i).firstChild.text)>-1)
    ? {

    ? var str3=\"document.all[\\\"\"+put_id+\"\\\"].options[j]=new Option(get_list.item(i).firstChild.text+get_list.item(i).lastChild.text,get_list.item(i).firstChild.text)\"
    ? eval(str3)
    ? j=j+1
    ? }
    }


    }


    function cReadonly(obj){
    ?if (obj.type==\"text\"){
    ??obj.readOnly=true
    ??obj.parentElement.className=\"readonly\"
    ?}else{
    ??obj.parentElement.className=\"readonly\"
    ?}
    }

    function cEditable(obj){
    ?if (obj.type==\"text\"){
    ??obj.readOnly=false
    ??obj.parentElement.className=\"editable\"
    ?}else{
    ??obj.parentElement.className=\"editable\"
    ?}
    }

    //-------------------------------
    //? 函數名:jstrim(s_value)
    //? 功能介紹:去掉s_value兩端的空格
    //? 參數說明:被操作的字符串
    //? 返回值? :處理結果字符串
    //-------------------------------
    function jstrim(s_value)
    {


    ?var i;
    ?var ibegin;

    ?for(i=0;i<s_value.length;i++)
    ?{
    ??if(s_value.charAt(i)!=\' \')
    ???break;
    ?}


    ?if(i==s_value.length)
    ??return \"\";
    ?else
    ??ibegin=i;


    ?for(i=s_value.length-1;i>=0;i--)
    ?{
    ??if(s_value.charAt(i)!=\' \')
    ???break;
    ?}


    ?return s_value.substr(ibegin,i-ibegin+1);
    }

    //-------------------------------
    //? 函數名:trimall()
    //? 功能介紹:去掉document的所有form里面的所有的input(text)里面的兩端空格
    //? 參數說明:無
    //? 返回值? :無
    //-------------------------------
    function trimall()
    {
    ?var i,j;
    ?var allforms;
    ?var myelement;

    ?allforms=document.forms;

    ?for(i=0;i<allforms.length;i++)
    ?{
    ??for(j=0;j<allforms(i).elements.length;j++)
    ??{
    ???myelement=allforms(i).elements(j);
    ???if(myelement.type==\"text\")
    ????//myelement.value=jstrim(myelement.value.toUpperCase());
    ???myelement.value=jstrim(myelement.value);
    ??}
    ?}
    }
    //-------------------------------
    //? 函數名:
    //? 功能介紹:日期加年
    //? 參數說明:無
    //? 返回值? :無
    //-------------------------------
    function rqaddyears(rq1,ns)
    {
    if (rq1.length==10){
    y=parseInt(rq1.substring(0,4))+ns
    m=parseInt(rq1.substring(5,7))
    d=parseInt(rq1.substring(8,10))

    }else if (rq1.length==8){
    y=parseInt(rq1.substring(0,4))+ns
    m=parseInt(rq1.substring(4,6))
    d=parseInt(rq1.substring(6,8))
    }else{
    return \"\";
    }
    var str =y+rq1.substring(4,10);
    if (m==2 && d==29){
    str=y+rq1.substring(4,7)+\"-28\";
    }

    return str
    }

    //光標移動至最后
    function movelast()
    {
    var e = event.srcElement;
    var r =e.createTextRange();
    r.moveStart(\'character\',e.value.length);
    r.collapse(true);
    r.select();
    }


    //翻譯obj(select)中的值
    function trancode(obj,val){
    for (var i=0;i<obj.length;i++){
    var tmp
    tmp=obj.options(i).text
    tmp=tmp.substr((tmp.indexOf(\":\")+1),tmp.length-tmp.indexOf(\":\")-1)
    if (obj.options(i).value==val){
    return tmp
    }

    }
    return \"\"
    }
    //-------------------------------
    //? 函數名:DateAddMonth(strDate,iMonths)
    //? 功能介紹:獲得日期加上iMonths月數后的日期
    //? 參數說明:strDate 日期
    //? 返回值? :無返回值
    //-------------------------------
    function DateAddMonth(strDate,iMonths){
    ?? var thisYear = parseFloat(strDate.substring(0,4));
    ?? var thisMonth = parseFloat(strDate.substring(5,7));
    ?? var thisDate = parseFloat(strDate.substring(8,10));
    ?? var d =thisYear *12 + thisMonth + parseFloat(iMonths);

    ?? var newMonth = d % 12;
    ?? if (newMonth==0) {
    ?? ?newMonth=12;
    ?? }
    ?? var newYear = (d - newMonth) /12;
    ?? var newDate = thisDate;
    ?? var iMonthLastDate=getMonthLastDate(newYear,newMonth)
    ?? if (newDate>iMonthLastDate) newDate=iMonthLastDate;
    ?? var newDay=\"\";

    ?? newDay += newYear;
    ?? if (newMonth<10) {
    ?? ?newDay +=\"-\" + \"0\" + newMonth;
    ?? }else{
    ?? ?newDay +=\"-\" + newMonth;
    ?? }

    ?? if (newDate<10) {
    ?? ?newDay +=\"-\" + \"0\" + newDate;
    ?? }else{
    ?? ?newDay +=\"-\" + newDate;
    ?? }
    ?? return(newDay);??????????????????????????????? // 返回日期。
    }
    function getMonthLastDate(iYear,iMonth){
    ?var dateArray= new Array(31,28,31,30,31,30,31,31,30,31,30,31);
    ?var days=dateArray[iMonth-1];
    ?if ((((iYear % 4 == 0) && (iYear % 100 != 0)) || (iYear % 400 == 0)) && iMonth==2){
    ??days=29;
    ?}
    ?return days;
    }


    //####################################
    //保存客戶信息
    //
    //
    //#####################################
    function getcookie(nKey){
    ?var search=nKey+\"=\";
    ?begin=document.cookie.indexOf(search);
    ?if (begin!=-1){
    ??begin+=search.length
    ??end=document.cookie.indexOf(\";\",begin);
    ??if (end==-1){
    ???end=document.cookie.length;
    ??}
    ??return document.cookie.substring(begin,end)
    ?}else{
    ?return \"\"
    ?}
    }

    function setcookie(nKey,nVal){
    document.cookie=nKey+\"=\"+nVal+\";expires=wednesday,09-oct-2099 23:00:00 GMT\"
    }


    function disableall()
    {
    ?var i,j;
    ?var allforms;
    ?var myelement;

    ?allforms=document.forms;

    ?for(i=0;i<allforms.length;i++)
    ?{
    ??for(j=0;j<allforms(i).elements.length;j++)
    ??{
    ???myelement=allforms(i).elements(j);
    ???if(myelement.type==\"text\")
    ????//myelement.value=jstrim(myelement.value.toUpperCase());
    ???//myelement.value=jstrim(myelement.value);
    ???myelement.readOnly=true;
    ??}
    ?}
    }


    function selectedObj(obj,value){


    ?var i=obj.length;
    ?for(index=0;index<i;index++){

    ??if (obj.options[index].value==value)
    ??{
    ????? obj.options[index].selected=true;
    ????? break;
    ??}

    ?}

    }

    function getSelectedObjText(obj){

    ? ?? return obj.options[obj.selectedIndex].text;

    }

    posted on 2006-07-13 07:59 風人園 閱讀(278) 評論(0)  編輯  收藏 所屬分類: JavaScript

    主站蜘蛛池模板: 成人嫩草影院免费观看| 亚洲第一成年网站视频| AAAAA级少妇高潮大片免费看| 国产伦一区二区三区免费| 亚洲国产午夜精品理论片在线播放| 在线观看的免费网站| 亚洲视频无码高清在线| 四色在线精品免费观看| 久久亚洲AV成人无码国产电影| 四虎在线播放免费永久视频 | 亚洲综合一区国产精品| 成人人观看的免费毛片| 精品亚洲成a人在线观看| 亚洲不卡AV影片在线播放| fc2免费人成在线视频| 亚洲AV无码国产丝袜在线观看| 午夜免费福利小电影| 亚洲国产人成在线观看| 在线免费观看污网站| 免费无码婬片aaa直播表情| 中文字幕精品无码亚洲字| 久久大香香蕉国产免费网站| 亚洲va成无码人在线观看| 成年女人永久免费观看片| GOGOGO高清免费看韩国| 91亚洲va在线天线va天堂va国产| 五月婷婷在线免费观看| 男人的天堂av亚洲一区2区| 亚洲乱码国产一区三区| 一本岛高清v不卡免费一三区| 亚洲avav天堂av在线网毛片| 亚洲色婷婷六月亚洲婷婷6月| 99久久人妻精品免费一区| 亚洲色大情网站www| 亚洲色爱图小说专区| 麻豆国产精品免费视频| 特a级免费高清黄色片| 亚洲系列国产精品制服丝袜第| 日韩精品免费一区二区三区| 中文字幕乱码一区二区免费| 91在线亚洲综合在线|