zoukankan      html  css  js  c++  java
  • base.js,通用js方法,Js方法封装

    ================================

    ©Copyright 蕃薯耀 2020-08-11

    https://www.cnblogs.com/fanshuyao/

    base.js

    //增加window.console定义,解决IE6、7、8、9使用console.log报未定义的错误
    window.console = window.console || (function(){
        var c = {}; 
        c.log = c.warn = c.debug = c.info = c.error = c.time = c.dir = c.profile = c.clear = c.exception = c.trace = c.assert = function(){};
        return c;
    })();
    
    /**
    * 去掉字符串头尾空格
    * @param str 传入的字符串值
    */
    function trim(str) {
        if(str == null || typeof str == "undefined"){
            return "";
        }
        return str.replace(/(^s*)|(s*$)/g, "");
    };
    
    /** 
     * 是否为Null 
     * @param object 
     * @returns {Boolean} 
     */  
    function isNull(object){  
        if(object == null || typeof object == "undefined"){  
            return true;  
        }  
        return false;  
    }; 
    
    /** 
     * 是否为空字符串,有空格不是空字符串 
     * @param str 
     * @returns {Boolean} 
     */  
    function isEmpty(str){  
        if(str == null || typeof str == "undefined" ||   
                str == ""){  
            return true;  
        }  
        return false;  
    };
    
    /** 
     * 是否为空字符串,有空格也是空字符串 
     * @param str 
     * @returns {Boolean} 
     */  
    function isBlank(str){  
        if(isEmpty(str) || isEmpty($.trim(str))){  
            return true;  
        }  
        return false;  
    };
    
    function removeLastCode(str){
        if(str == null || str.length < 1){
            return str;
        }
        return str.substring(0, str.length-1);
    };
    
    /**
     * 设置select选中
     * @param selectId select的id值
     * @param checkValue 选中option的值
    */
    function setOptionSelected(selectId, checkValue){
        var select = document.getElementById(selectId);
        for(var i=0; i<select.options.length; i++){
            if(select.options[i].innerHTML == checkValue){
                select.options[i].selected = true;
                break;
            }
        }
    };
    
    /**
     * 获取checkbox选中数量
     * @param name checkbox的name值
    */
    function getCheckBoxLength(name){
        var length = 0;
        var checkboxes;
        if(name == null || name == ""){
            checkboxes = document.getElementsByTagName("input");
            for(var j=0;j<checkboxes.length;j++){
                if(checkboxes[j].type=='checkbox' && checkboxes[j].checked){
                    length+=1;
                }
            }
        }else{
            checkboxes = document.getElementsByName(name);
            for(var i=0;i<checkboxes.length;i++){
                if(checkboxes[i].checked){
                    length+=1;
                }
            }
        }
        return length;
    };
    
    function getCheckedLength(name){
        var length = 0;
        if(name == null || name == ""){
            alert("请添加参数name");
        }else{
            var inputs = document.getElementsByName(name);
            for(var i=0;i<inputs.length;i++){
                if(inputs[i].checked){
                    length += 1;
                }
            }
        }
        return length;
    };
    
    
    /**
     * 只返回一个checkbox的值
     * @param name
     * @returns
     */
    function getCheckedValue(name){
        var value = null;
        if(name == null || name == ""){
            alert("请添加参数name");
        }else{
            var inputs = document.getElementsByName(name);
            for(var i=0;i<inputs.length;i++){
                if(inputs[i].checked){
                    value = inputs[i].value;
                    break;
                }
            }
        }
        return value;
    };
    
    /**
     * 返回勾选checkbox的所有值(字符串,通过,分隔)
     * @param name
     * @returns
     */
    function getCheckedValues(name){
        var values = "";
        if(name == null || name == ""){
            alert("方法getCheckedValues(name)需要添加参数name");
        }else{
            var inputs = document.getElementsByName(name);
            if(inputs != null && inputs.length > 0){
                var splitCode = ",";
                for(var i=0; i<inputs.length; i++){
                    if(inputs[i].checked){
                        values  += inputs[i].value + splitCode;
                    }
                }
                if(values.indexOf(splitCode) > -1){
                    values = removeLastCode(values);
                }
            }
        }
        return values;
    };
    
    /**
     * 设置checkbox选中,同时适用于设置radio选中
     * @param name checkbox的name属性
     * @param checkValues checkbox的选择的值,通过英文逗号(,)连接
     */
    function setChecked(name, checkValues){
        var checkboxes = document.getElementsByName(name);
        var checkboxesLength = checkboxes.length;
        
        var checkValuesArray = checkValues.split(",");
        var checkValuesArrayLength = checkValuesArray.length;
        
        if(checkboxesLength > 0 && checkValuesArrayLength > 0){
            for(var i=0; i<checkboxesLength; i++){
                for(var j=0; j<checkValuesArrayLength; j++){
                    if(checkboxes[i].value == checkValuesArray[j]){
                        checkboxes[i].checked = true;
                        break;
                    }
                }
            }
        }
    };
    
    /**
     * 根据id让Checkbox选中
     * @param id
     */
    function checked(id){
        document.getElementById(id).checked = true;
    };
    
    /**
     * 根据id判断Checkbox是否选中
     * jquery方式:$("input[type='checkbox']").is(':checked')
     * @param id
     * @returns {Boolean}
     */
    function isChecked(id){
        if(isEmpty(id)){
            alert("isChecked(id)方法中的id不能为空");
            return;
        }
        if(document.getElementById(id).checked){
            return true;
        }
        return false;
    };
    
    /**
     * 根据name判断Checkbox是否选中,有一个选中即返回true,所有不选中则返回false
     * @param name
     * @returns {Boolean}
     */
    function isCheckedByName(name){
        if(isEmpty(name)){
            alert("isCheckedByName(name)方法中的name不能为空");
            return;
        }
        var checkboxes = document.getElementsByName(name);
        if(checkboxes != null && checkboxes.length > 0){
            for(var i=0; i<checkboxes.length; i++){
                if(checkboxes[i].checked){
                    return true;
                }
            }
        }
        return false;
    };
    
    /**
     * 根据name判断所有Checkbox是否选中,所有选中则返回true,一个没选中返回false
     * @param name
     * @returns {Boolean}
     */
    function isCheckedAllByName(name){
        if(isEmpty(name)){
            alert("isCheckedAllByName(name)方法中的name不能为空");
            return;
        }
        var checkboxes = document.getElementsByName(name);
        var checkboxesLength = checkboxes.length;
        var count = 0;
        if(checkboxes != null && checkboxesLength > 0){
            for(var i=0; i<checkboxesLength; i++){
                if(checkboxes[i].checked){
                    count ++;
                }
            }
            if(count == checkboxesLength){//由于上面已经判断checkboxesLength > 0,这里不需要判断count==0,因为checkboxesLength已经不为0
                return true;
            }
        }
        return false;
    };
    
    
    /*
    function thisIframeHeightAuto(){
        setIframeHeight("auditList");
    };
     */
    //window.setInterval("iframeHeightAuto()", 200);
    function setIframeHeight(iframeId){
        var cwin = document.getElementById(iframeId);
        if(document.getElementById){
            if(cwin && !window.opera){
                if(cwin.contentDocument && cwin.contentDocument.body.offsetHeight){
                    cwin.height = cwin.contentDocument.body.offsetHeight;//FF NS
                    //console.log("FF NS cwin.height=" +cwin.height);
                }else if(cwin.Document && cwin.Document.body.scrollHeight){
                    cwin.height = cwin.Document.body.scrollHeight;//IE
                    //console.log("IE cwin.height=" +cwin.height);
                }
            }else if(cwin.contentWindow.document && cwin.contentWindow.document.body.scrollHeight){
                cwin.height = cwin.contentWindow.document.body.scrollHeight;//Opera
            }
        }
        //console.log("cwin.height=" + cwin.height);
    };
    
    /**
     * 是否为数字(仅正数),包括正整数、正小数、0
     * @param value
     * @returns
     */
    function isNumber(value){
        var z_reg = /^(([0-9])|([1-9]([0-9]+)))(.[0-9]+)?$/;
        return z_reg.test(value);
    };
    
    /**
     * 是否为所有数字(正数、负数),包括整数、小数、0
     * @param value
     * @returns
     */
    function isNumberAll(value){
        var z_reg = /^(-)?(([0-9])|([1-9]([0-9]+)))(.[0-9]+)?$/;
        return z_reg.test(value);
    };
    
    /**
     * 是否为正整数,包括正整数和0
     * @param value
     * @returns
     */
    function isInteger(value){
        var z_reg = /^(([0-9])|([1-9]([0-9]+)))$/;
        return z_reg.test(value);
    };
    
    /**
     * 是否为所有整数,包括正整数、负整数、0
     * @param value
     * @returns
     */
    function isIntegerAll(value){
        var z_reg = /^(-)?(([0-9])|([1-9]([0-9]+)))$/;
        return z_reg.test(value);
    };
    
    /**
     * 是否为小数(仅正小数)
     * @param value
     * @returns
     */
    function isDouble(value){
        var z_reg = /^(([0-9])|([1-9]([0-9]+)))(.[0-9]+)$/;
        return z_reg.test(value);
    };
    
    /**
     * 是否为所有小数(正小数、负小数、0.0)
     * @param value
     * @returns
     */
    function isDoubleAll(value){
        var z_reg = /^(-)?(([0-9])|([1-9]([0-9]+)))(.[0-9]+)$/;
        return z_reg.test(value);
    };

    ================================

    ©Copyright 蕃薯耀 2020-08-11

    https://www.cnblogs.com/fanshuyao/

  • 相关阅读:
    小结:ES7——async和await初识
    如何抽离、引用公共部分页面
    数据处理:高德、百度经纬度坐标的相互转化
    mock数据的基础使用
    express随笔
    ES6学习基础
    初学node.js
    ajax基础
    ajax的几个面试题
    (转)认识原型对象和原型链
  • 原文地址:https://www.cnblogs.com/fanshuyao/p/13473640.html
Copyright © 2011-2022 走看看