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

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

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

    posts - 122,  comments - 25,  trackbacks - 0
    /*
    -------------------------------------------------------------------------------
    說明:JavaScript腳本,驗證表單中的數據項  begin
    -------------------------------------------------------------------------------
    */
    function checkForm(objFrm){
        
    var len = 0;
        len 
    = objFrm.elements.length;
        
    var i = 0;
        
    var objCheck;
        
    //文本框
        for(i = 0; i < len; i ++){
            objCheck 
    = objFrm.elements[i];
            
    if(objCheck.type =="text" && !f_checkTextValid(objCheck) ){
                
    return false;
            }
        }
        
    //下拉框
        for(i = 0; i < len; i ++){
            objCheck 
    = objFrm.elements[i];
            
    if(objCheck.type =="select-one" && !f_checkSelectValid(objCheck) ){
                
    return false;
            }
        }
        
    //時間段有效
        if( f_checkStartAndEndDate(objFrm) == falsereturn false;
            
    return true;
    }

    function f_checkSelectValid(obj){
        
    //alert("check select");
        if(obj.options.length <= 0){
            alert(
    "下拉選框無數據!");
            
    return false;
        }
        
    return true;
    }

    function f_checkStartAndEndDate(frm){
        
    var len = frm.elements.length;
        
    if(len == null && len == 0return true;
        
    var i=0;
        
    var temp;
        
    var objCheck;
        
    var objStartDate;
        
    var objEndDate;
        
    //alert("start date period check");
        try{
            
    for(i=0; i< len ; i++){
                objCheck 
    = frm.elements[i];
                temp 
    = objCheck.name;
                
    if( temp.indexOf("startDate">0 ||temp.indexOf("beginDate")>0 )
                    objStartDate 
    = objCheck;
                
    if( temp.indexOf("endDate"> 0 )
                    objEndDate 
    = objCheck;
            }
            
    //alert(objStartDate.value);
            //alert(objEndDate.value);
            if(objStartDate.value==null || objStartDate.value =="" || objStartDate.value ==null || objStartDate.value ==""){
                
    return true;
            }
            
    return checkTwoDate(objStartDate.value, objEndDate.value);
            
    //alert("end date period check");
        } catch(E){}
        
    return true;
    }

     
    function f_checkTextValid(obj){
        
    //不能為空
        if(obj.getAttribute("isNeed"!= null){
            
    if(f_isNotNull(obj) == falsereturn false;
        }
        
    //不能超過長度
        if(obj.getAttribute("maxlength"!= null){
            
    if(f_checkLength(obj) == falsereturn false;
        }
        
    var checkType ="";
        checkType 
    = obj.getAttribute("checkType");
        
    if(checkType==null||checkType==""return true;
        
    //
        if (checkType.indexOf("number">=0){
            
    if(f_isNumber(obj) == false)  return false;
            
    if(f_checkNumType(obj,checkType) == false)  return false;
        }
        
    //
        if (checkType.indexOf("positive">=0){
            
    if(f_isNumber(obj) == false)  return false;
            
    if(f_isPositive(obj)==false)  return false;
            
    if(f_checkNumType(obj,checkType) == false)  return false;
        }

        
    if (checkType.indexOf("date">=0){
            
    if(f_checkDate(obj) == falsereturn false;
        }

        
    return true;
    }


    function f_isNotNull(obj){
        
    if(obj.value == ""){
            f_alert(obj, 
    " 不允許為空值!");
            
    return false;
        }
        
    return true;
    }

    function f_isNumber(obj){
        
    if(isNaN(obj.value)){
            f_alert(obj,
    " 應為數值類型");
            
    return false;
        }
        
    return true;
    }

    function f_checkDate(obj) {
        
    if(checkDate(obj.value) ==false){
            f_alert(obj,
    " 不是合法日期格式!");
            
    return false;
        }
        
    return true;
    }

    function f_checkLength(obj){
        
    if(getTotalBytes(obj) > Math.abs( obj.getAttribute("maxlength") ) ){
            f_alert(obj,
    " 超出長度限制!");
            
    return false;
        }
        
    return true;
    }

    function  f_alert(obj,alertStr){
        
    var fielName = obj.getAttribute("fieldName");
        
    if(fielName == null)
            fielName 
    = "";
        alert(fielName 
    + "\n" +alertStr);
        obj.select();
        obj.focus();
    }

    function f_checkNumType(obj, numType){
        
    //假設: 已經進行數字類型判斷
        var strTemp;
        
    var numpric;
        
    var numLen;
        
    var strArr;
        
    var defaultLen = 19;
        
    var defaultpric = 5;
        
    try{
            
    if(numType == null|| numType ==""return f_checkNumLenPrec(obj,defaultLen, defaultpric);
            
    if(numType.indexOf("("< 0 || numType.indexOf(")"< 0 ) return f_checkNumLenPrec(obj,defaultLen, defaultpric);
            strTemp 
    = numType.substr( numType.indexOf("("+ 1 ,numType.indexOf(")"- numType.indexOf("("-1 );
            
    if(strTemp == null||strTemp ==""return f_checkNumLenPrec(obj,defaultLen, defaultpric);
            strArr 
    = strTemp.split(",");
            numLen 
    = Math.abs( strArr[0] );
            numpric 
    = Math.abs( strArr[1] );
            
    return f_checkNumLenPrec(obj,numLen, numpric);
        }
    catch(e){
            alert(
    "in f_checkNumType = " + e);
            
    return f_checkNumLenPrec(obj,defaultLen, defaultpric);
        }
    }

    function f_checkNumLenPrec(obj, len, pric){
        
    var numReg;
        
    var value = obj.value;
        
    var strValueTemp, strInt, strDec;
        
    //alert(value + "=====" + len + "====="+ pric);
        try {
            numReg 
    =/[\-]/;
            strValueTemp 
    = value.replace(numReg, "");
            strValueTemp 
    = strValueTemp.replace(numReg, "");
            
    //整數
            if(pric==0){
                numReg 
    =/[\.]/;
                
    //alert(numReg.test(value));
                if(numReg.test(value) == true){
                    f_alert(obj, 
    "輸入必須為整數類型!");
                    
    return false;
                }
            }

            
    if(strValueTemp.indexOf("."< 0 ){
                
    //alert("lennth==" + strValueTemp);
                if(strValueTemp.length >( len - pric)){
                    f_alert(obj, 
    "整數位不能超過"+ (len - pric) +"");
                    
    return false;
                }
            } 
    else{
                strInt 
    = strValueTemp.substr( 0, strValueTemp.indexOf(".") );
                
    //alert("lennth==" + strInt);
                if(strInt.length >( len - pric)){
                    f_alert(obj, 
    "整數位不能超過"+ (len - pric) +"");
                    
    return false;
                }

                strDec 
    = strValueTemp.substr( (strValueTemp.indexOf(".")+1), strValueTemp.length );
                
    //alert("pric==" + strDec);
                if(strDec.length > pric){
                    f_alert(obj, 
    "小數位不能超過"+  pric +"");
                    
    return false;
                }
            }
            
    return true;
        }
        
    catch(e){
            alert(
    "in f_checkNumLenPrec = " + e);
            
    return false;
        }
    }

    function f_isPositive(obj){
        
    var numReg =/[\-]/;
        
    if(numReg.test(obj.value) == true){
            f_alert(obj, 
    "必須為正數!");
            
    return false;
        }
        
    return true;
    }

    /*
    function selectedCheckboxCount(form)
    功能說明:對Form中選中的可選項計數
    參數說明:
    form:指定的表單
    */
    function selectedCheckboxCount(form){
        
    var length =0;
        
    var i=0;
        
    var count =0;
        eles 
    = form.elements;
        
    while(i<eles.length){
            obj
    = eles.item(i);
            
    //type = obj.attributes.item("type").nodeValue;
            type = obj.type;
            
    if(type == "checkbox"){
                
    if(obj.checked){
                    count
    ++;
                }
            }
            i
    ++;
        }
        
    return count;
    }

    //得到字節長度
    function getByteLen(str){
        
    var l = str.length;
        
    var n = l;
        
    for ( var i=0; i<l; i++ )
            
    if ( str.charCodeAt(i) <0 || str.charCodeAt(i) >255 )
                n
    =n+1;
        
    return n
    }

    /*
    說明:
    1.清除表格中的數據(0.0 和 0)
    2.如果cell中沒有數據,則自動加上一個空格
    3.清除空白行的checkbox
    參數:
    clearzero:是否清除"0"、"0.0",false不清除、true清除(默認為true)
    tablename:要清除的表格名字,默認為sortTable
    */
    function clear_table(clearzero,tablename){
        
    var tobject;
        
    if(tablename==null)
            tobject
    =gmobj("sortTable");
        
    else
            tobject
    =gmobj(tablename);
        
    //如果table未定義,則不進行過濾
        if(tobject==null)     return;
        
    //如果函數調用參數為空,表示要清除0、0.0;反之,不要清除0、0.0。
        var clear = (clearzero==null)?true:clearzero;
        
    //清除0、0.0,填補空格
        var rows = tobject.rows;
        
    var j=0;
        
    for(var i=0;i<rows.length;i++){
            
    //取得第一個cell的屬性clear,如果為1,表示該行沒有數據,則清除該行所有數據
            while(tobject.rows[i].cells[j] != null){
                
    if(clear){
                    
    if(tobject.rows[i].cells[j].innerHTML==0 ||tobject.rows[i].cells[j].innerHTML==0.0||tobject.rows[i].cells[j].innerHTML=="")
                    tobject.rows[i].cells[j].innerText
    =" ";
                } 
    else {
                    
    if (tobject.rows[i].cells[j].innerHTML=="")
                        tobject.rows[i].cells[j].innerText
    =" ";
                }
                j
    ++;
            }
            j
    =0;
        }
        
    return true;
    }

    function gmobj(mtxt)  /* Get object by object name */
    {
        
    if (document.getElementById) {
            m
    =document.getElementById(mtxt);
        } 
    else if (document.all) {
            m
    =document.all[mtxt];
        } 
    else if (document.layers) {
            m
    =document.layers[mtxt];
        }
        
    return m;
    }

    posted on 2007-05-22 09:49 josson 閱讀(365) 評論(0)  編輯  收藏 所屬分類: web開發
    <2007年5月>
    293012345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    常用鏈接

    留言簿(3)

    隨筆分類

    隨筆檔案

    收藏夾

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 每天更新的免费av片在线观看| 四虎影在线永久免费四虎地址8848aa | 国产亚洲综合久久| 亚洲午夜久久久久久久久久| 91青青青国产在观免费影视 | 亚洲成人免费在线| 国产亚洲一卡2卡3卡4卡新区| 一本色道久久综合亚洲精品| 在线观看日本免费a∨视频| 国产精品hd免费观看| 亚洲制服丝袜精品久久| 亚洲日本一区二区三区在线不卡| 1a级毛片免费观看| 日韩在线视频播放免费视频完整版| 亚洲精品视频久久| 亚洲国产一区二区视频网站| 无码精品A∨在线观看免费| 一级特黄色毛片免费看| 亚洲中文字幕人成乱码| 在线观看亚洲天天一三视| 男人的好免费观看在线视频| a级毛片100部免费观看| 亚洲AV无码国产一区二区三区| 亚洲av永久无码精品古装片| 四虎永久免费影院| 无码国产精品一区二区免费| 伊人免费在线观看高清版| 亚洲av无码av在线播放| 亚洲日韩乱码中文无码蜜桃| 亚洲中文字幕不卡无码| 国产成人无码区免费A∨视频网站 国产成人涩涩涩视频在线观看免费 | 福利片免费一区二区三区| 亚洲毛片基地日韩毛片基地| 中文字幕第13亚洲另类| 国产麻豆免费观看91| 亚洲第一成年免费网站| 色欲国产麻豆一精品一AV一免费| 皇色在线免费视频| 免费福利资源站在线视频| 亚洲色大成网站www永久网站| 亚洲第一网站免费视频|