javascript通用工具_javascript 通用 工具-程序员宅基地

技术标签: ajax  AJAX - JQUERY  jquery  javascript  

$(function() {

	/**
	 * 自动生成分页
	 * 
	 * @data 为分页实体
	 * @suffix 分页标签后缀
	 * @pageTargetId 分页打印的目标ID
	 * @statisticsTargetId 统计数据的目标ID
	 * 
	 */
	function printPage(data, suffix, pageTargetId, statisticsTargetId) {
		var first = "<span style=\"cursor:pointer;\" id=\"first_page_" + suffix + "\">首页</span> ";
		var pre = "<span style=\"cursor:pointer;\" id=\"pre_page_" + suffix + "\">上一页</span> ";
		var next = "<span style=\"cursor:pointer;\" id=\"next_page_" + suffix + "\">下一页</span> ";
		var last = "<span style=\"cursor:pointer;\" id=\"last_page_" + suffix + "\">尾页</span> ";
		var inp_p = "<input name=\"inp_curr_page_" + suffix + "\" type=\"text\" id=\"inp_curr_page_" + suffix + "\" value=\"" + data.no + "\" class=\"page\" /> ";
		var curr = "<span style=\"cursor:pointer;\" id=\"curr_page_" + suffix + "\">跳到</span> ";
		var pageCont = first + pre + next + last + inp_p + curr;
		document.getElementById(pageTargetId).innerHTML = pageCont;
		var begin = (data.no - 1) * data.size + 1, end = data.no * data.size;
		begin = begin < 1 ? 0 : begin;
		end = end > data.total ? data.total : end;
		var statistics = begin + " - " + end + " / " + data.total + " [" + data.size + " * " + data.count + "]";
		document.getElementById(statisticsTargetId).innerHTML = statistics;
	}

	/**
	 * 创建TD的方法
	 * 
	 * @row TR DOM
	 * @i 列索引号
	 * @id 列ID
	 * @width 列宽
	 * @height 列高
	 * @align 列水平对齐方式
	 * @valign 列垂直对齐方式
	 * @cont 列内容
	 * @className 列CSS样式名称
	 */
	function createTd(row, i, id, width, height, align, valign, cont, className) {
		var td = row.insertCell(i);
		td.id = id;
		td.width = width;
		td.height = height;
		td.align = align;
		td.vAlign = valign;
		td.innerHTML = cont;
		td.className = className;
	}

	/** ******** 异步请求函数 ************ */

	/**
	 * 通用异步请求方法
	 * 
	 * @action 请求的目标地址
	 * @data json对象,请求的参数。例如 var params = {id:id,name:name}
	 * @successFunction 请求成功后的回调函数
	 * @errorFunction 请求失败后的回调函数
	 */
	function execute(action, data, successFunction, errorFunction) {
		var xhr = $.ajax({
			url : action,
			type : "post",
			data : data,
			dataType : "json",
			async : false,
			success : successFunction,
			error : errorFunction
		});
		xhr.abort();
	}

	/**
	 * 通用异步请求方法
	 * 
	 * @action 请求的目标地址
	 * @data json对象,请求的参数。例如 var params = {id:id,name:name}
	 * @successFunction 请求成功后的回调函数
	 * @errorMessage 请求失败后的错误提示
	 */
	function execute2(action, data, successFunction, errorMessage) {
		execute(action, data, successFunction, function() {
			alert(errorMessage);
		});
	}

	/**
	 * 通用异步请求方法,返回值为json形式的列表
	 * 
	 * @action 请求的目标地址
	 * @data json对象,请求的参数。例如 var params = {id:id,name:name}
	 */
	function list(action, data) {
		var array = null;
		execute(action, data, function(data) {
			// array = eval("(" + data.json + ")");
			array = data;
		}, function() {
			alert("Exception:list method error");
		});
		return array;
	}

	/**
	 * 通用异步请求方法,返回值为json对象
	 * 
	 * @action 请求的目标地址
	 * @data json对象,请求的参数。例如 var params = {id:id,name:name}
	 */
	function get(action, data) {
		var object = null;
		execute(action, data, function(data) {
			// object = eval("(" + data.json + ")");
			object = data;
		}, function() {
			alert("Exception:get metthod error");
		});
		return object;
	}

	/**
	 * 通用异步请求方法,返回值为json对象
	 * 
	 * @action 请求的目标地址
	 * @id 对象的身份标识,一般相对应数据库的主键ID
	 */
	function find(action, id) {
		var data = {
			id : id
		};
		return get(action, data);
	}

	/** ******** 验证函数 ************ */

	/**
	 * 利用正则表达式,进行验证的方法
	 * 
	 * @reg 正则表达式对象
	 * @val 要验证的值
	 */
	function checkLocal(reg, val) {
		return reg.test(val);
	}

	/**
	 * 进行异步验证的方法,验证对象是否存在
	 * 
	 * @action 请求的目标地址
	 * @data json对象,请求的参数。例如 var params = {id:id,name:name}
	 */
	function checkAsync(action, data) {
		var arr = list(action, data);
		var bl = true;
		if (arr == null || arr.length == 0) {
			bl = false;
		}
		return bl;
	}

	/**
	 * 信息回显的方法
	 * 
	 * @bl boolean类型,主要是验证的结果
	 * @id 回显信息打印的目标对象/元素id
	 * @successMessage 验证正确时显示的信息,可以是HTML
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	function echoInfo(bl, id, successMessage, errorMessage) {
		var message = errorMessage;
		if (bl) {
			message = successMessage;
		}
		document.getElementById(id).innerHTML = message;
	}

	/**
	 * 信息回显的方法,该方法主要是alert/dialog方式进行输出
	 * 
	 * @bl boolean类型,主要是验证的结果
	 * @errorMessage 验证错误时显示的信息
	 */
	function echoInfo2(bl, errorMessage) {
		if (!bl) {
			alert(errorMessage);
		}
	}

	/**
	 * 利用正则表达式,进行验证的方法
	 * 
	 * @reg 正则表达式对象
	 * @val 要验证的值
	 * @id 回显信息打印的目标对象/元素id
	 * @successMessage 验证正确时显示的信息,可以是HTML
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	function checkByReg(reg, val, id, successMessage, errorMessage) {
		var bl = checkLocal(reg, val);
		echoInfo(bl, id, successMessage, errorMessage);
		return bl;
	}

	/**
	 * 利用正则表达式,进行验证的方法,该方法主要是alert/dialog方式进行输出
	 * 
	 * @reg 正则表达式对象
	 * @val 要验证的值
	 * @errorMessage 验证错误时显示的信息
	 */
	function checkByReg2(reg, val, errorMessage) {
		var bl = checkLocal(reg, val);
		echoInfo2(bl, errorMessage);
		return bl;
	}

	/**
	 * 进行异步验证的方法,验证对象是否存在
	 * 
	 * @action 请求的目标地址
	 * @data json对象,请求的参数。例如 var params = {id:id,name:name}
	 * @id 回显信息打印的目标对象/元素id
	 * @successMessage 验证正确时显示的信息,可以是HTML
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	function checkByAsync(action, data, id, successMessage, errorMessage) {
		var bl = checkAsync(action, data);
		echoInfo(bl, id, successMessage, errorMessage);
		return bl;
	}

	/**
	 * 进行异步验证的方法,验证对象是否存在,该方法主要是alert/dialog方式进行输出
	 * 
	 * @action 请求的目标地址
	 * @data json对象,请求的参数。例如 var params = {id:id,name:name}
	 * @errorMessage 验证错误时显示的信息
	 */
	function checkByAsync2(action, data, errorMessage) {
		var bl = checkAsync(action, data);
		echoInfo2(!bl, errorMessage);
		return bl;
	}

	/**
	 * 空值验证方法
	 * 
	 * @val 要验证的值
	 * @id 回显信息打印的目标对象/元素id
	 * @successMessage 验证正确时显示的信息,可以是HTML
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	function isFull(val, id, successMessage, errorMessage) {
		var bl = false;
		val = val.replace(/(^\s*)|(\s*$)/g, "");
		if (val != null && val != "") {
			bl = true;
		}
		echoInfo(bl, id, successMessage, errorMessage);
		return bl;
	}

	/**
	 * 空值验证方法,该方法主要是alert/dialog方式进行输出
	 * 
	 * @val 要验证的值
	 * @errorMessage 验证错误时显示的信息
	 */
	function isFull2(val, errorMessage) {
		var bl = false;
		val = val.replace(/(^\s*)|(\s*$)/g, "");
		if (val != null && val != "") {
			bl = true;
		}
		echoInfo2(bl, errorMessage);
		return bl;
	}

	/**
	 * 长度验证方法
	 * 
	 * @val 要验证的值
	 * @len1 长度起始值,为正整数
	 * @len2 长度结束值, 要大于len1
	 * @id 回显信息打印的目标对象/元素id
	 * @successMessage 验证正确时显示的信息,可以是HTML
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	function checkLength(val, len1, len2, id, successMessage, errorMessage) {
		var bl = false;
		val = val.replace(/(^\s*)|(\s*$)/g, "");
		if (val.length >= len1 && val.length <= len2) {
			bl = true;
		}
		echoInfo(bl, id, successMessage, errorMessage);
		return bl;
	}

	/**
	 * 长度验证方法,该方法主要是alert/dialog方式进行输出
	 * 
	 * @val 要验证的值
	 * @len1 长度起始值,为正整数
	 * @len2 长度结束值, 要大于len1
	 * @errorMessage 验证错误时显示的信息
	 */
	function checkLength2(val, len1, len2, errorMessage) {
		var bl = false;
		val = val.replace(/(^\s*)|(\s*$)/g, "");
		if (val.length >= len1 && val.length <= len2) {
			bl = true;
		}
		echoInfo2(bl, errorMessage);
		return bl;
	}

	/**
	 * 数值比较方法
	 * 
	 * @val1 要进行比较的第一个值
	 * @val2 要进行比较的第二个值
	 * 
	 * @return 0:两个值相等;1:第一个值较大;-1:第二个值
	 */
	function compareNumber(val1, val2) {
		var val = 0;
		if (val1 > val2) {
			val = 1;
		} else if (val1 < val2) {
			val = -1;
		}
		return val;
	}

	/**
	 * 数值比较方法
	 * 
	 * @val1 要进行比较的第一个值
	 * @val2 要进行比较的第二个值
	 * 
	 * @return 0:两个值相等;1:第一个值较大;-1:第二个值
	 */
	function compareNumber2(str1, str2) {
		var val1 = new Number(str1);
		var val2 = new Number(str2);
		return compareNumber(val1, val2);
	}

	/**
	 * 数值比较大小
	 * 
	 * @str1 要进行比较的第一个值
	 * @str2 要进行比较的第二个值
	 * @id 回显信息打印的目标对象/元素id
	 * @successMessage 验证正确时显示的信息,可以是HTML
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	function comparekValue(str1, str2, id, successMessage, errorMessage) {
		var val = compareNumber2(str1, str2);
		var bl = val == 1 ? true : false;
		echoInfo(bl, id, successMessage, errorMessage);
		return bl;
	}

	/**
	 * 数值比较大小
	 * 
	 * @str1 要进行比较的第一个值
	 * @str2 要进行比较的第二个值
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	function comparekValue2(str1, str2, errorMessage) {
		var val = compareNumber1(str1, str2);
		var bl = val == 1 ? true : false;
		echoInfo2(bl, errorMessage);
		return bl;
	}

	/**
	 * 数值相等比较
	 * 
	 * @str1 要进行比较的第一个值
	 * @str2 要进行比较的第二个值
	 * @id 回显信息打印的目标对象/元素id
	 * @successMessage 验证正确时显示的信息,可以是HTML
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	function equalsValue(str1, str2, id, successMessage, errorMessage) {
		var val = compareNumber2(str1, str2);
		var bl = val == 0 ? true : false;
		echoInfo(bl, id, successMessage, errorMessage);
		return bl;
	}

	/**
	 * 数值相等比较
	 * 
	 * @str1 要进行比较的第一个值
	 * @str2 要进行比较的第二个值
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	function equalsValue2(str1, str2, errorMessage) {
		var val = compareNumber2(str1, str2);
		var bl = val == 0 ? true : false;
		echoInfo2(bl, errorMessage);
		return bl;
	}

	/**
	 * 通用的创建SELECT方法
	 * 
	 * @action 请求的ACTION地址
	 * @params 参数,为JSON对象
	 * @id 创建的SELECT id
	 * @defaultVal 创建的SELECT 默认值
	 */
	// function generalSelect(action, params, id, defaultVal) {
	// var array = new Array();
	// var op = {
	// text : publicOp.text,
	// value : ""
	// }
	// array.push(op);
	// var viewers = list(action, params);
	// var size = viewers.length;
	// for (var m = 0; m < size; m++) {
	// var viewer = viewers[m];
	// if (viewer == null) {
	// continue;
	// }
	// var op2 = {
	// text : viewer.name,
	// value : viewer.id
	// }
	// array.push(op2);
	// }
	// var select = createSelect(id, array);
	// select.value = defaultVal;
	// return select;
	// }
	/**
	 * 通用的创建SELECT方法
	 * 
	 * @action 请求的ACTION地址
	 * @params 参数,为JSON对象
	 * @id 创建的SELECT id
	 * @defaultVal 创建的SELECT 默认值
	 */
	function generalSelect(action, params, id, defaultVal) {
		generalSelect2(action, params, id, defaultVal, true)
	}

	/**
	 * 通用的创建SELECT方法
	 * 
	 * @action 请求的ACTION地址
	 * @params 参数,为JSON对象
	 * @id 创建的SELECT id
	 * @defaultVal 创建的SELECT 默认值
	 */
	function generalSelect1(action, params, id, defaultVal) {
		generalSelect2(action, params, id, defaultVal, false)
	}

	/**
	 * 通用的创建SELECT方法
	 * 
	 * @action 请求的ACTION地址
	 * @params 参数,为JSON对象
	 * @id 创建的SELECT id
	 * @defaultVal 创建的SELECT 默认值
	 * @isPrefix 是否增加请选择选项
	 * 
	 */
	function generalSelect2(action, params, id, defaultVal, isPrefix) {
		var array = new Array();
		if (isPrefix) {
			var op = {
				text : publicOp.text,
				value : ""
			}
			array.push(op);
		}
		var viewers = list(action, params);
		var size = viewers.length;
		for (var m = 0; m < size; m++) {
			var viewer = viewers[m];
			if (viewer == null) {
				continue;
			}
			var op2 = {
				text : viewer.name,
				value : viewer.id
			}
			array.push(op2);
		}
		var select = createSelect(id, array);
		select.value = defaultVal;
		return select;
	}

	/**
	 * 获取多选框的值
	 * 
	 * @name 多选框名称
	 */
	function checkboxValue(name) {
		var value = "";
		$("input[name='" + name + "']").each(function() {
			var checked = $(this).attr("checked");
			if (checked == "checked") {
				value += "," + $(this).val();
			}
		});
		return value.substring(1);
	}

	/**
	 * 获取多选框的值
	 * 
	 * @name 多选框名称
	 */
	function checkboxValue2(name) {
		var value = checkboxValue(name);
		return value.split(",");
	}

	/**
	 * 获取单选框的值
	 * 
	 * @name 单选框名称
	 */
	function radioValue(name) {
		var value = $("input:radio[name='" + name + "']:checked").val();
		return value;
	}

	/**
	 * 移除已选中的option
	 * 
	 * @param sourceId
	 *            源SELECT
	 * @param targetId
	 *            目标SELECT
	 * @param bl
	 *            bl=true全部
	 */
	function generalSelectMove(sourceId, targetId, bl) {
		selectMove(sourceId, targetId, bl);
	}

	/* ==================================================================================== */
	/* ==================================================================================== */
	/* ==================================================================================== */

	/** ******** 公有函数 ************ */

	/**
	 * 通用异步请求方法
	 * 
	 * @action 请求的目标地址
	 * @data json对象,请求的参数。例如 var params = {id:id,name:name}
	 * @successFunction 请求成功后的回调函数
	 * @errorFunction 请求失败后的回调函数
	 */
	$.fn.publicExecute = function(action, data, successFunction, errorFunction) {
		execute(action, data, successFunction, errorFunction);
	};

	/**
	 * 通用异步请求方法
	 * 
	 * @action 请求的目标地址
	 * @data json对象,请求的参数。例如 var params = {id:id,name:name}
	 * @successFunction 请求成功后的回调函数
	 * @errorMessage 请求失败后的错误提示
	 */
	$.fn.publicExecute2 = function(action, data, successFunction, errorMessage) {
		execute2(action, data, successFunction, errorMessage);
	};

	/**
	 * 通用异步请求方法,返回值为json形式的列表
	 * 
	 * @action 请求的目标地址
	 * @data json对象,请求的参数。例如 var params = {id:id,name:name}
	 */
	$.fn.publicList = function(action, data) {
		return list(action, data);
	};

	/**
	 * 通用异步请求方法,返回值为json对象
	 * 
	 * @action 请求的目标地址
	 * @data json对象,请求的参数。例如 var params = {id:id,name:name}
	 */
	$.fn.publicGet = function(action, data) {
		return get(action, data);
	};

	/**
	 * 通用异步请求方法,返回值为json对象
	 * 
	 * @action 请求的目标地址
	 * @id 对象的身份标识,一般相对应数据库的主键ID
	 */
	$.fn.publicFind = function(action, id) {
		return find(action, id);
	};

	/**
	 * 利用正则表达式,进行验证的方法
	 * 
	 * @reg 正则表达式对象
	 * @val 要验证的值
	 * @id 回显信息打印的目标对象/元素id
	 * @successMessage 验证正确时显示的信息,可以是HTML
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	$.fn.publicCheckByReg = function(reg, val, id, successMessage, errorMessage) {
		return checkByReg(reg, val, id, successMessage, errorMessage);
	};

	/**
	 * 利用正则表达式,进行验证的方法,该方法主要是alert/dialog方式进行输出
	 * 
	 * @reg 正则表达式对象
	 * @val 要验证的值
	 * @errorMessage 验证错误时显示的信息
	 */
	$.fn.publicCheckByReg2 = function(reg, val, errorMessage) {
		return checkByReg2(reg, val, errorMessage);
	};

	/**
	 * 进行异步验证的方法,验证对象是否存在
	 * 
	 * @action 请求的目标地址
	 * @data json对象,请求的参数。例如 var params = {id:id,name:name}
	 * @id 回显信息打印的目标对象/元素id
	 * @successMessage 验证正确时显示的信息,可以是HTML
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	$.fn.publicCheckByAsync = function(action, data, id, successMessage, errorMessage) {
		return checkByAsync(action, data, id, successMessage, errorMessage);
	};

	/**
	 * 进行异步验证的方法,验证对象是否存在,该方法主要是alert/dialog方式进行输出
	 * 
	 * @action 请求的目标地址
	 * @data json对象,请求的参数。例如 var params = {id:id,name:name}
	 * @errorMessage 验证错误时显示的信息
	 */
	$.fn.publicCheckByAsync2 = function(action, data, errorMessage) {
		return checkByAsync2(action, data, errorMessage);
	};

	/**
	 * 空值验证方法
	 * 
	 * @val 要验证的值
	 * @id 回显信息打印的目标对象/元素id
	 * @successMessage 验证正确时显示的信息,可以是HTML
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	$.fn.publicIsFull = function(val, id, successMessage, errorMessage) {
		return isFull(val, id, successMessage, errorMessage);
	};

	/**
	 * 空值验证方法,该方法主要是alert/dialog方式进行输出
	 * 
	 * @val 要验证的值
	 * @errorMessage 验证错误时显示的信息
	 */
	$.fn.publicIsFull2 = function(val, errorMessage) {
		return isFull2(val, errorMessage);
	};

	/**
	 * 长度验证方法
	 * 
	 * @val 要验证的值
	 * @len1 长度起始值,为正整数
	 * @len2 长度结束值, 要大于len1
	 * @id 回显信息打印的目标对象/元素id
	 * @successMessage 验证正确时显示的信息,可以是HTML
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	$.fn.publicCheckLength = function(val, len1, len2, id, successMessage, errorMessage) {
		return checkLength(val, len1, len2, id, successMessage, errorMessage);
	};

	/**
	 * 长度验证方法,该方法主要是alert/dialog方式进行输出
	 * 
	 * @val 要验证的值
	 * @len1 长度起始值,为正整数
	 * @len2 长度结束值, 要大于len1
	 * @errorMessage 验证错误时显示的信息
	 */
	$.fn.publicCheckLength2 = function(val, len1, len2, errorMessage) {
		return checkLength2(val, len1, len2, errorMessage);
	};

	/**
	 * 数值比较大小
	 * 
	 * @str1 要进行比较的第一个值
	 * @str2 要进行比较的第二个值
	 * @id 回显信息打印的目标对象/元素id
	 * @successMessage 验证正确时显示的信息,可以是HTML
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	$.fn.publicComparekValue = function(str1, str2, id, successMessage, errorMessage) {
		return comparekValue(str1, str2, id, successMessage, errorMessage);
	}

	/**
	 * 数值比较大小
	 * 
	 * @str1 要进行比较的第一个值
	 * @str2 要进行比较的第二个值
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	$.fn.publicComparekValue2 = function(str1, str2, errorMessage) {
		return comparekValue2(str1, str2, errorMessage);
	}

	/**
	 * 数值相等比较
	 * 
	 * @str1 要进行比较的第一个值
	 * @str2 要进行比较的第二个值
	 * @id 回显信息打印的目标对象/元素id
	 * @successMessage 验证正确时显示的信息,可以是HTML
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	$.fn.publicEqualsValue = function(str1, str2, id, successMessage, errorMessage) {
		return equalsValue(str1, str2, id, successMessage, errorMessage);
	}

	/**
	 * 数值相等比较
	 * 
	 * @str1 要进行比较的第一个值
	 * @str2 要进行比较的第二个值
	 * @errorMessage 验证错误时显示的信息,可以是HTML
	 */
	$.fn.publicEqualsValue2 = function(str1, str2, errorMessage) {
		return equalsValue2(str1, str2, errorMessage);
	}

	/**
	 * 自动生成分页
	 * 
	 * @data 为分页实体
	 * @suffix 分页标签后缀
	 * @pageTargetId 分页打印的目标ID
	 * @statisticsTargetId 统计数据的目标ID
	 * 
	 */
	$.fn.publicPrintPage = function(data, suffix, pageTargetId, statisticsTargetId) {
		printPage(data, suffix, pageTargetId, statisticsTargetId);
	}

	/**
	 * 创建TD的方法
	 * 
	 * @row TR DOM
	 * @i 列索引号
	 * @id 列ID
	 * @width 列宽
	 * @height 列高
	 * @align 列水平对齐方式
	 * @valign 列垂直对齐方式
	 * @cont 列内容
	 * @className 列CSS样式名称
	 */
	$.fn.publicCreateTd = function(row, i, id, width, height, align, valign, cont, className) {
		createTd(row, i, id, width, height, align, valign, cont, className);
	}

	/**
	 * 通用的创建SELECT方法
	 * 
	 * @action 请求的ACTION地址
	 * @params 参数,为JSON对象
	 * @id 创建的SELECT id
	 * @defaultVal 创建的SELECT 默认值
	 */
	$.fn.publicGeneralSelect = function(action, params, id, defaultVal) {
		return generalSelect(action, params, id, defaultVal);
	}

	/**
	 * 通用的创建SELECT方法
	 * 
	 * @action 请求的ACTION地址
	 * @params 参数,为JSON对象
	 * @id 创建的SELECT id
	 * @defaultVal 创建的SELECT 默认值
	 */
	$.fn.publicGeneralSelect1 = function(action, params, id, defaultVal) {
		return generalSelect1(action, params, id, defaultVal);
	}

	/**
	 * 移除已选中的option
	 * 
	 * @param sourceId
	 *            源SELECT
	 * @param targetId
	 *            目标SELECT
	 * @param bl
	 *            bl=true全部
	 */
	$.fn.publicGeneralSelectMove = function(sourceId, targetId, bl) {
		generalSelectMove(sourceId, targetId, bl);
	}

	/**
	 * 获取多选框的值
	 * 
	 * @name 多选框名称
	 */
	$.fn.publicCheckboxValue = function(name) {
		return checkboxValue(name);
	}

	/**
	 * 获取多选框的值
	 * 
	 * @name 多选框名称
	 */
	$.fn.publicCheckboxValue2 = function(name) {
		return checkboxValue2(name);
	}

	/**
	 * 获取单选框的值
	 * 
	 * @name 单选框名称
	 */
	$.fn.publicRadioValue = function(name) {
		return radioValue(name);
	}

});

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ccvnc/article/details/47172949

智能推荐

Cordova Android源码分析系列一(项目总览和CordovaActivity分析)_cordovaactivity api-程序员宅基地

文章浏览阅读8.1k次。PhoneGap/Cordova是一个专业的移动应用开发框架,是一个全面的WEB APP开发的框架,提供了以WEB形式来访问终端设备的API的功能。这对于采用WEB APP进行开发者来说是个福音,这可以避免了原生开发的某些功能。Cordova 只是个原生外壳,app的内核是一个完整的webapp,需要调用的原生功能将以原生插件的形式实现,以暴露js接口的方式调用。 Cordova Android项目是Cordova Android原生部分的Java代码实现,提供了Android原生代码和上层W_cordovaactivity api

TMS28335学习笔记之DMA_28335 dma-程序员宅基地

文章浏览阅读1.9k次。TMS28335的DMA一共有6通道,分别是CH1到CH6._28335 dma

前端技能——实现后台管理系统接收消息提醒并语音播报(websocket)_前端后台系统语音播报-程序员宅基地

文章浏览阅读7.6k次,点赞4次,收藏30次。websocket实现消息实时接收去年在做后台管理系统的时候,就遇到这个问题,但是当时我比较菜(现在也不是很好……),语音播报功能不是我做的。。今天,我遇到了这个需求,真是躲过了初一,躲不了十五。学习新东西啦!开心websocket的使用websocket的使用步骤:建立websocket连接后,客户端(前端)可以发送指令给后端,后端如果有数据就返回,此时前端可以接收到消息,进行音频的播放。webscoket实例化if ("websocket" in window) { websocke_前端后台系统语音播报

C++学习笔记1 - 预备知识_c++自学-预备知识-程序员宅基地

文章浏览阅读337次。《C++ Primer Plus 第6版》读书笔记知识点:1.C++融合了3种编程方式:C语言代表的过程性语言、面向对象编程、泛型编程。2.程序3.过程编程强调的是算法方面,程序按照一系列的流程生成特定的结果。弊端是程序经常使用分支语句,根据某种测试的结果,执行一组或另一组指令。执行路径很混乱(被称为“意大利面条式编程”)4.C语言鼓励程序员将大的程序分解成小程序_c++自学-预备知识

动脑学院安卓高级进阶_android 知识点文档整理-程序员宅基地

文章浏览阅读448次。也是在一边学习一边整理,持续更新中,也在此感谢那些懂得分享的大神们: 1、 事件分发流程http://www.jianshu.com/p/e99b5e8bd67b2、view的渲染机制http://www.cnblogs.com/ldq2016/p/6668148.html3、动画原理,底层如何给上层信号任玉刚(《Android开发艺术探索》作者)动画系列博客,从基础开始讲解:..._android 知识点文档整理

MyBatis-Plus使用removeByIds批量删除太慢导致mysql锁定-程序员宅基地

文章浏览阅读6.5k次。首先看看是不是因为removeByIds中的beforemove和aftermove有没有被重写,有的话看看 beforemove和aftermove中进行什么操作 导致太慢。如果没有重写的话 一次性删除大量的数据 建议这样做需要自己把集合拆分成较小的集合,可以用guava的List.partition(),然后结合parallelStream()使用,如果删除不完全的话还是建议把parallelStream换成stream 例如: List<List<AuthA._removebyids

随便推点

docker配合nginx代理springboot项目发布到外网_docker springboot nginx-程序员宅基地

文章浏览阅读1.1k次,点赞3次,收藏5次。在linux上使用docker镜像加nginx发布springboot项目到外网_docker springboot nginx

Java Socket编程实例详解-程序员宅基地

文章浏览阅读119次。事实上网络编程简单的理解就是两台计算机相互通讯数据而已.对于程序员而言,去掌握一种编程接口并使用一种编程模型相对就会显得简单的多了.Java SDK提供一些相对简单的Api来完成这些工作.Socket就是其中之一.对于Java而言.这些Api存在与java.net 这个包里面.因此只要导入这个包就可以准备网络编程了. 网络编程的基本模型就是客户机到服务器模型.简单的说就是两个进程之间相互通讯,然后..._java如何用类固定端口号socket

C++中的 取整约等于处理 Round(),floor(),ceil()_c++约等于怎么表示-程序员宅基地

文章浏览阅读1k次。2.1 2.6 -2.1 -2.6floor : 不大于自变量的最大整数 2 2 -3 ..._c++约等于怎么表示

ffmpeg分析 之 如何解析mpegts流_ffmpeg解析ts流如何取到program-程序员宅基地

文章浏览阅读3.3k次。转:http://blog.chinaunix.net/uid-20364597-id-3530284.htmlffmpeg分析 之 如何解析mpegts流 2013-03-19 11:02:40分类: LINUX数字电视当中接触最多的还是ts流,以前使用ffplay播放过录制的ts流,但却不知道在ffmpeg当中ts流是如何被解析出来的,今天花点时间对_ffmpeg解析ts流如何取到program

pip 安装依赖 requirements.txt_pip install --no-index --find-links=./pkg -r requ-程序员宅基地

文章浏览阅读6.3w次,点赞17次,收藏71次。列出已安装的包pip freezeorpip list导出requirements.txtpip freeze > <目录>/requirements.txt安装包在线安装pip install <包名>或pip install -r requirements.txt通过使用== >= <= > <来指定版本..._pip install --no-index --find-links=./pkg -r requirements.txt

springMVC和spring各自扫描自己的注解不要相互混淆(entityManager.flush()报错no transaction is in progress)_entitymanager.flush(); no transaction is in progre-程序员宅基地

文章浏览阅读1.6w次,点赞6次,收藏5次。1、问题 执行 entityManager.flush(); 总是报错:javax.persistence.TransactionRequiredException: no transaction is in progress字面解释是:“没有启动事务”。可是事务是在配置中交给了spring管理了,在方法上加注解 @Transactional就申明了事务的,为何说没有启动事_entitymanager.flush(); no transaction is in progress

推荐文章

热门文章

相关标签