//string.format
$.format = function (source, params) {
if (arguments.length == )
return function () {
var args = $.makeArray(arguments);
args.unshift(source);
return $.validator.format.apply(this, args);
};
if (arguments.length > && params.constructor != Array) {
params = $.makeArray(arguments).slice();
}
if (params.constructor != Array) {
params = [params];
}
$.each(params, function (i, n) {
source = source.replace(new RegExp("\\{" + i + "\\}", "g"), (typeof n == 'undefined' || n == null) ? '' : n);
});
return source;
}
//获取URL参数
function request(name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.search.substr().match(reg);
if (r != null) return r[]; return null;
}
//Cookie
// 设置Cookie
function setCookie(name, value) {
var expires = (arguments.length > ) ? arguments[] : null;
document.cookie = name + "=" + encodeURIComponent(value) + ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) + "";
} // 获取Cookie
function getCookie(name) {
var value = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));
if (value != null) {
return decodeURIComponent(value[]);
} else {
return null;
}
} // 删除cookie
function removeCookie(name) {
var expires = new Date();
expires.setTime(expires.getTime() - * );
setCookie(name, "", expires);
}
//运算
// 浮点数加法运算
function floatAdd(arg1, arg2) {
var r1, r2, m;
try {
r1 = arg1.toString().split(".")[].length;
} catch (e) {
r1 = ;
}
try {
r2 = arg2.toString().split(".")[].length;
} catch (e) {
r2 = ;
}
m = Math.pow(, Math.max(r1, r2));
return (arg1 * m + arg2 * m) / m;
} // 浮点数减法运算
function floatSub(arg1, arg2) {
var r1, r2, m, n;
try {
r1 = arg1.toString().split(".")[].length;
} catch (e) {
r1 =
}
try {
r2 = arg2.toString().split(".")[].length;
} catch (e) {
r2 =
}
m = Math.pow(, Math.max(r1, r2));
n = (r1 >= r2) ? r1 : r2;
return ((arg1 * m - arg2 * m) / m).toFixed(n);
} // 浮点数乘法运算
function floatMul(arg1, arg2) {
var m = , s1 = arg1.toString(), s2 = arg2.toString();
try {
m += s1.split(".")[].length;
} catch (e) { }
try {
m += s2.split(".")[].length;
} catch (e) { }
return Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(, m);
} //保留2位四舍五入
function changeTwoDecimal_f(x) {
var f_x = parseFloat(x);
if (isNaN(f_x)) {
alert('function:changeTwoDecimal->parameter error');
return false;
}
var f_x = Math.round(x * ) / ;
var s_x = f_x.toString();
var pos_decimal = s_x.indexOf('.');
if (pos_decimal < ) {
pos_decimal = s_x.length;
s_x += '.';
}
while (s_x.length <= pos_decimal + ) {
s_x += '';
}
return s_x;
} // 浮点数除法运算
function floatDiv(arg1, arg2) {
var t1 = , t2 = , r1, r2;
try {
t1 = arg1.toString().split(".")[].length;
} catch (e) { }
try {
t2 = arg2.toString().split(".")[].length;
} catch (e) { }
with (Math) {
r1 = Number(arg1.toString().replace(".", ""));
r2 = Number(arg2.toString().replace(".", ""));
return (r1 / r2) * pow(, t2 - t1);
}
} // 设置数值精度
function setScale(value, scale, roundingMode) {
if (roundingMode.toLowerCase() == "roundhalfup") {
return (Math.round(value * Math.pow(, scale)) / Math.pow(, scale)).toFixed(scale);
} else if (roundingMode.toLowerCase() == "roundup") {
return (Math.ceil(value * Math.pow(, scale)) / Math.pow(, scale)).toFixed(scale);
} else {
return (Math.floor(value * Math.pow(, scale)) / Math.pow(, scale)).toFixed(scale);
}
}
// html字符串转义
function htmlEscape(htmlString) {
htmlString = htmlString.replace(/&/g, '&');
htmlString = htmlString.replace(/</g, '<');
htmlString = htmlString.replace(/>/g, '>');
htmlString = htmlString.replace(/'/g, '´');
htmlString = htmlString.replace(/"/g, '"');
htmlString = htmlString.replace(/\|/g, '¦');
return htmlString;
}