// 获取当前页面 url 参数。
// 返回值:该方法返回一个数组,数组中的每个元素都是一个 JSON 对象,该 JSON 对象包含如下属性:
// name: 表示 url 参数的名称;
// value: 表示 url 参数的值;
// 也可以通过数组访问器快速访问某个特定名称的参数值,方法如:coreUtil.getRequest()["id"]。
(function (window, $, undefined) {
// 定义 通用工具方法 扩展对象基元
coreUtil = function () { return Object.apply(this, arguments); },
coreUtil.fn = coreUtil.prototype = {};
// 定义 jQuery 扩展对象基元
coreJquery = function () { return $.apply(this, arguments); },
coreJquery.fn = coreJquery.prototype = {};
coreJquery.util = coreUtil;
var document = coreUtil.document = window.document,
location = coreUtil.location = window.location,
docElem = coreUtil.docElem = document.documentElement,
history = coreUtil.history = window.history,
parent = coreUtil.parent = window.parent,
top = coreUtil.top = window.top,
$$ = coreJquery.emptyJquery = coreJquery.empty$ = coreJquery.$$ = coreUtil.emptyJquery = coreUtil.empty$ = coreUtil.$$ = $(),
core_string = version,
//core_date = coreNullable.Date,
//core_number = coreNullable.Number,
core_array = coreNullable.Array,
//core_boolean = coreNullable.Boolean,
//core_trim = core_string.trim,
core_push = core_array.push,
core_slice = core_array.slice,
core_splice = core_array.splice,
//core_sort = core_array.sort,
//core_join = core_array.join,
core_isArray = Array.isArray;
// 定义版本
coreUtil.version = version;
// 获取指定对象的类型。
coreUtil.type = $.type;
// 测试对象是否是窗口(有可能是Frame)。
coreUtil.isWindow = $.isWindow;
// 测试对象是否是布尔(Boolean)类型值。
coreUtil.isBoolean = function (obj) { return coreUtil.type(obj) == "boolean"; };
// 测试对象是否是字符串(String)类型值。
coreUtil.isString = function (obj) { return coreUtil.type(obj) == "string"; };
// 测试对象是否是日期(Date)类型值。
coreUtil.isDate = function (obj) { return coreUtil.type(obj) == "date"; };
// 测试对象是否是正则表达式(RegExp)。
coreUtil.isRegExp = function (obj) { return coreUtil.type(obj) == "regexp"; };
// 测试传入的参数是否是一个 javscript 对象;
coreUtil.isObject = function (obj) { return coreUtil.type(obj) == "object"; };
// 测试对象是否是数组(Array)。
coreUtil.isArray = $.isArray;
// 测试对象是否是函数。
// 注意:在IE浏览器里,浏览器提供的函数比如'alert'还有 DOM 元素的方法比如 'getAttribute' 将不认为是函数。
coreUtil.isFunction = $.isFunction;
// 测试对象是否是数值或数值格式的字符串。
// 方法检查它的参数是否代表一个数值。如果是这样,它返回 true。否则,它返回false。该参数可以是任何类型的。
coreUtil.isNumeric = coreUtil.likeNumber = coreUtil.likeNumeric = $.isNumeric;
// 判断对象是否是数值类型;
coreUtil.isNumber = function (obj) { return coreUtil.type(obj) == "number"; };
// 测试对象是否是空对象(不包含任何属性)。
// 这个方法既检测对象本身的属性,也检测从原型继承的属性(因此没有使用hasOwnProperty)。
coreUtil.isEmptyObject = $.isEmptyObject;
// 测试对象是否为空(不包含任何属性的空对象、null、undefined、空字符串、全空格)。
// 这个方法既检测对象本身的属性,也检测从原型继承的属性(因此没有使用hasOwnProperty)。
coreUtil.isEmptyObjectOrNull = function (obj) {
switch (coreUtil.type(obj)) {
case "string":
return coreString.isNullOrWhiteSpace(obj);
case "array":
return obj.length == 0;
case "date":
return Date.parse(obj) == 0;
case "object":
return coreUtil.isEmptyObject(obj);
}
return obj == null || obj == undefined;
};
// 测试对象是否是纯粹的对象(通过 "{}" 或者 "new Object" 创建的)。
coreUtil.isPlainObject = $.isPlainObject;
// 判断对象是否为 "未定义" 值(即 undefined)。
coreUtil.isUndefined = function (obj) { return obj === undefined || typeof obj === "undefined"; };
// 判断对象是否为空(Null)值。
coreUtil.isNull = function (obj) { return obj === null; };
// 判断对象是否为 "未定义" 值(即 undefined)或空(Null)值。
coreUtil.isNullOrUndefined = function (obj) { return coreUtil.isUndefined(obj) || coreUtil.isNull(obj); };
// 测试对象不为 "未定义" 值(即 undefined)、空(Null)值、Boolean-False值、空字符串值或数字0中的任何一种。
coreUtil.isPositive = function (obj) { return obj ? true : false; };
// 判断对象是否为 "未定义" 值(即 undefined)、空(Null)值、Boolean-False值、空字符串值或数字0中的一种。
coreUtil.isNegative = function (obj) { return obj ? false : true; };
// 测试对象是否是 jQuery 对象。
coreUtil.isJqueryObject = function (obj) { return obj != null && obj != undefined && ((obj.jquery ? true : false) || obj.constructor === $$.constructor); };
// 判断对象是否是一个空的 jQuery 对象(不包含任何 DOM 元素,即 length = 0)。
coreUtil.isEmptyJquery = coreUtil.isEmptyJqueryObject = function (obj) { return coreUtil.isJqueryObject(obj) && !obj.length; };
// 定义一个空函数
coreUtil.noop = coreUtil.isFunction($.noop) ? $.noop : function () { };
// 判断传入的字符串是否为Null或者为空字符串或者全是空格。
coreUtil.trim = $.trim;
// 将一个 DOM 对象或者表达式解析为 jQuery 对象;
// 如果该对象本身就已经是一个 jQuery 对象,则直接将其返回。
coreUtil.parseJqueryObject = coreUtil.parseJquery = function (obj) { return coreUtil.isJqueryObject(obj) ? obj : $(obj); };
// 检测一个对象是否为一个数组对象或者类似于数组对(具有数组的访问方式:具有 length 属性、且具有属性名为数字的索引访问器)
// 注意:此方法传入 字符串 时执行,也会返回 true,因为 字符串 是一个字符数组。
coreUtil.likeArray = function (obj) {
if (obj == null || obj == undefined || coreUtil.isWindow(obj)) {
return false;
}
if (obj.nodeType === 1 && obj.length) {
return true;
}
var type = coreUtil.type(obj);
return type === "array" || type !== "function" && coreUtil.isNumeric(obj.length) && obj.length >= 0;
};
// 检测一个对象是否为一个数组对象或者类似于数组对(具有数组的访问方式:具有 length 属性、且具有属性名为数字的索引访问器)且不是字符串
coreUtil.likeArrayNotString = function (obj) {
return coreUtil.likeArray(obj) && !coreUtil.isString(obj);
};
coreUtil.getRequest = function () {
var search = location.search;
if (search.substr(0, 1) == "?") { search = search.substr(1, search.length - 1); }
var result = [];
if (search.length > 0) {
var params = search.split("&");
for (var i = 0; i < params.length; i++) {
var param = params[i];
var pos = param.indexOf("=");
var name = param.substring(0, pos);
var value = param.substr(pos + 1);
result.push({ name: name, value: value });
result[name] = value;
}
}
return result;
};
coreUtil.request = coreUtil.getRequest();
})(window, jQuery);
具体使用
var url = "InstallApplyForm.html?s=" + Math.random();
$Core.UI.openDialog("redwind", url + "&installApplyId=" + value +"&type=red",
{
title: "查看【安装申请】",
width: '80%',
height: '90%',
onClose: function () {
}
});
key = $.util.request["installApplyId"];