ComplianceServer/oldcode/Core.Web/Scripts/main_op.js

161 lines
4.8 KiB
JavaScript

//获取参数返回 url
function GetQueryStr(toobarid) {
var str = "";
//自动遍历读取 搜索栏目的text文本框
$("#" + toobarid +" [name^='txt_']").each(function () {
if ($(this).val() != "")
str += $(this).attr("name").replace("txt_", "") + "=" + encodeURI($.trim($(this).val())) + "&";
});
//下拉框
$("#" + toobarid +" [name^='slt_']").each(function () {
str += $(this).attr("name").replace("slt_", "") + "=" + encodeURI($(this).val()) + "&";
});
//单选框
$("#" + toobarid +" [name^='rdo_']:checked").each(function () {
str += $(this).attr("name").replace("rdo_", "") + "=" + encodeURI($(this).val()) + "&";
});
//复选框
var name = "";
$("#" + toobarid +" [name^='ckb_']:checked").each(function () {
if (name != "" && name != $(this).attr("name"))
str += "&";
if (name != $(this).attr("name"))
str += ($(this).attr("name").replace("ckb_", "") + "=" + encodeURI($(this).val()) + "");
else
str += ("," + $(this).val());//多选 用逗号隔开
name = $(this).attr("name");
});
if (name != "")
str += "&";
if (str.length > 0)
str = str.substr(0, str.length - 1);
return str;
}
//获取数据返回 params对象
function GetParams(toobarid) {
var params = {};
//自动遍历读取 搜索栏目的text文本框
$("#" + toobarid+" [name^='txt_']").each(function () {
//if ($(this).val() != "") {
params[$(this).attr("Name").replace("txt_", "")] = $.trim($(this).val());
//}
});
//下拉框
$("#" + toobarid +" [name^='slt_']").each(function () {
params[$(this).attr("Name").replace("slt_", "")] = $(this).val();
});
//单选框
$("#" + toobarid +" [name^='rdo_']:checked").each(function () {
params[$(this).attr("Name").replace("rdo_", "")] = $(this).val();
});
//原始输出
$("#" + toobarid +" [name^='org_']").each(function () {
params[$(this).attr("Name")] = $(this).val();
});
//复选框
var nname = "";
var nvalue = "";
$("#" + toobarid +" [name^='ckb_']:checked").each(function () {
if (nname != "" && nname !== $(this).attr("Name").replace("ckb_", "")) {
var options = { nname: nvalue };
params[nname] = nvalue;
nvalue = $(this).val();
}
else
nvalue += ("," + $(this).val());//多选 用逗号隔开
nname = $(this).attr("Name").replace("ckb_", "");
});
if (nname != "") {
params[nname] = nvalue;
}
return params;
}
$(function () {
//继承jquery的$.ajax方法
var _ajax = $.ajax;
$.r_ajax = function (opt) {
//备份opt中error和complete方法
var fn = {}
if (opt.loading) {
fn.beforeSend = ajaxLoading();
}
if (opt.url.indexOf('?') > -1)
opt.url = opt.url + "&ajaxGuid=" + GetGuid();
else
opt.url = opt.url + "?ajaxGuid=" + GetGuid();
fn.complete = opt.complete;
//扩展增强处理
var _opt = $.extend(opt, {
complete: function (xhr, ts) {
//成功回调方法增强处理
if (opt.loading)
ajaxLoadEnd();
if (fn.complete != null)
fn.complete(xhr, ts);
}
});
_ajax(_opt);
};
//继承jquery的$.post方法
var _post = $.post;
$.r_post = function (url, data, success, dataType) {
ajaxLoading();//Loading功能
var n_success = success;
var r_data = data;
var r_dataType = dataType || "json";
if (!isJson(data)) {
n_success = data;
r_data = {};
r_dataType = success;
}
var r_success = function (r_data, r_textStatus, r_jqXHR) {
ajaxLoadEnd();
n_success(r_data, r_textStatus, r_jqXHR);
}
if (url.indexOf('?') > -1)
url = url + "&postGuid=" + GetGuid();
else
url = url + "?postGuid=" + GetGuid();
_post(url, r_data, r_success, r_dataType);
};
})
var timeid = null;
function isJson(obj) {
var isjson = typeof (obj) == "object" && Object.prototype.toString.call(obj).toLowerCase() == "[object object]" && !obj.length;
return isjson;
}
function ajaxLoading() {
layui.use('layer', function () {
var layer = layui.layer;
//layer.load(2, { time: 10 * 1000 });
layer.load(2, { time: 0 });
});
}
function ajaxLoadEnd() {
layui.use('layer', function () {
var layer = layui.layer;
layer.closeAll('loading');
});
}
function GetGuid() {
var s4 = function () {
return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);
};
return s4() + s4() + s4() + "-" + s4();
}