`

base.js,通用js方法,Js方法封装

阅读更多

base.js,通用js方法,Js方法封装

 

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

©Copyright 蕃薯耀 2020-08-11

http://fanshuyao.iteye.com/

 

 

//增加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

http://fanshuyao.iteye.com/

1
2
分享到:
评论

相关推荐

    FunTianLibrary:这是 JavaScript 库开发的逐步改进

    common.js: 包含部分通用的对象和方法。 cache.js: 基于 localStorage 的面向简单对象的缓存工具。 ui/ui-base.js: UI组件基础类,所有UI组件继承自该类。 ui/loader-button.js: 继承自UIBase类。使按钮具有状态,...

    ASN1 JavaScript解析

    页面包含一个JavaScript通用ASN.1解析器,它可以解码任何有效的ASN.1 DER或BER结构,无论是Base64编码的(识别原始Base64、PEM封装的和以Base64开始的)还是Hex编码的。 页面左侧将打印一个表示层次结构的树,右侧...

    ASP框架AspBox 1.3.2a

    AspBox是一个方便快速开发ASP框架,AspBox提供了大量实用的ASP通用过程及方法和子类,可以简化大部分的ASP操作。 AspBox还可以进行拓展子类对象以增强自身功能。封装严谨,层层嵌套,提高了代码重复利用多次利用。 ...

    ctf总结.md

    查看网页源码,很清楚看到是前端JS控制的话,那么直接禁用 JavaScript就可以上传php文件了, 或者可以用burpsuite通过拦截数据包,修改filenmae后文件名后缀为php 1.jpg.php 1.php.jpg 1.php;.jpg 后缀名修改为...

    C#基类库(苏飞版)

    5.方法二:随机生成字符串(数字和字母混和) 6.从字符串里随机得到,规定个数的字符串. 复制代码 22.条形码 BarCodeToHTML 本类是个条码生成类,大家可根据需要自己设置,非常好用 23.图片 ImageClass 主要功能...

    AspBox-v1.3.2工具API

    AspBox是一个方便快速开发ASP框架,AspBox提供了大量实用的ASP通用过程及方法和子类,可以简化大部分的ASP操作。 AspBox还可以进行拓展子类对象以增强自身功能。封装严谨,层层嵌套,提高了代码重复利用多次利用。 ...

    ASP.NET编程之道.part1.rar

    陷阱27 通用数据类型运算产生的陷阱 陷阱28 在模态窗口中下载文件 陷阱29 构造方法中调用虚方法的陷阱 陷阱30 使用值类型进行线程同步 第4章 开发人员意识中的20个常见谬误 谬误01 所有的异常都要使用try…catch语句...

    asp.net知识库

    常用编码工具类,支持base64,md5,des,crc32 也谈谈技术面试 在C#里把ArrayList转换为Array 或 把Array转换为ArrayList C# 2.0 在.NET 2.0中,让你的组件也可以绑定 .NET20 一种简单的窗口控件UI状态控制方法 翻译MSDN...

    ko-epui:基于剔除和除法的通用ui组件

    ko-epui(knockout/kero base enterprise ui component) 基于knockout组件 和 封装的ui组件。依赖于knockout 和kero 我们的目标:不写css 更优雅的自定义标签写法,更好的语义化 date日期组件 &lt;u params='...'&gt; 无缝...

    vc++ 开发实例源码包

    详细讲解了Crypt++的加密解密的使用以及其它的加密解密方法(例如base64加解密、哈希加解密以及其它的文件加解密),分静态库和动态库方法。 JSCalls_demo js调用的演示源码 树控件拖动 演示了在树控件中来回拖动...

    vc++ 应用源码包_1

    详细讲解了Crypt++的加密解密的使用以及其它的加密解密方法(例如base64加解密、哈希加解密以及其它的文件加解密),分静态库和动态库方法。 JSCalls_demo js调用的演示源码 树控件拖动 演示了在树控件中来回拖动...

    vc++ 应用源码包_6

    详细讲解了Crypt++的加密解密的使用以及其它的加密解密方法(例如base64加解密、哈希加解密以及其它的文件加解密),分静态库和动态库方法。 JSCalls_demo js调用的演示源码 树控件拖动 演示了在树控件中来回拖动...

    vc++ 应用源码包_2

    详细讲解了Crypt++的加密解密的使用以及其它的加密解密方法(例如base64加解密、哈希加解密以及其它的文件加解密),分静态库和动态库方法。 JSCalls_demo js调用的演示源码 树控件拖动 演示了在树控件中来回拖动...

    vc++ 应用源码包_5

    详细讲解了Crypt++的加密解密的使用以及其它的加密解密方法(例如base64加解密、哈希加解密以及其它的文件加解密),分静态库和动态库方法。 JSCalls_demo js调用的演示源码 树控件拖动 演示了在树控件中来回拖动...

    vc++ 应用源码包_3

    详细讲解了Crypt++的加密解密的使用以及其它的加密解密方法(例如base64加解密、哈希加解密以及其它的文件加解密),分静态库和动态库方法。 JSCalls_demo js调用的演示源码 树控件拖动 演示了在树控件中来回拖动...

    docker-express:docker 容器中的基本 nodejs express 应用程序

    docker 容器中的 Base nodejs Express 应用程序。 安装 可以在此处找到通用 Docker 灌输文档 - 。 但是,总而言之: 要在 Windows 上安装 docker,它需要在 VM 中运行。 Docker 有一个名为 Boot2Docker 的工具,它...

    易化的Python-易语言

    SHA加密_SHA3加密_HmacSHA256加密_CRC32JS_调试JS_加载JS_运行GZIP_压缩GZIP_解压文件_取运行目录文件_更改当前工作目录文件_更改当前进程目录文件_遍历指定路径文件文件_遍历指定路径所有子目录文件_创建单层目录...

Global site tag (gtag.js) - Google Analytics