$(function () { document.body.className = localStorage.getItem('config-skin'); $("[data-toggle='tooltip']").tooltip(); }) $.reload = function () { location.reload(); return false; } $.loading = function (bool, text) { var $loadingpage = top.$("#loadingPage"); var $loadingtext = $loadingpage.find('.loading-content'); if (bool) { $loadingpage.show(); } else { if ($loadingtext.attr('istableloading') == undefined) { $loadingpage.hide(); } } if (!!text) { $loadingtext.html(text); } else { $loadingtext.html("页面加载中,请稍等..."); } $loadingtext.css("left", (top.$('body').width() - $loadingtext.width()) / 2 - 50); $loadingtext.css("top", (top.$('body').height() - $loadingtext.height()) / 2); } $.request = function (name) { var search = location.search.slice(1); var arr = search.split("&"); for (var i = 0; i < arr.length; i++) { var ar = arr[i].split("="); if (ar[0] == name) { if (unescape(ar[1]) == 'undefined') { return ""; } else { return unescape(ar[1]); } } } return ""; } $.currentWindow = function () { var iframeId = top.$(".NFine_iframe:visible").attr("id"); return top.frames[iframeId]; } $.browser = function () { var userAgent = navigator.userAgent; var isOpera = userAgent.indexOf("Opera") > -1; if (isOpera) { return "Opera" }; if (userAgent.indexOf("Firefox") > -1) { return "FF"; } if (userAgent.indexOf("Chrome") > -1) { if (window.navigator.webkitPersistentStorage.toString().indexOf('DeprecatedStorageQuota') > -1) { return "Chrome"; } else { return "360"; } } if (userAgent.indexOf("Safari") > -1) { return "Safari"; } if (userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1 && !isOpera) { return "IE"; }; } $.download = function (url, data, method) { if (url && data) { data = typeof data == 'string' ? data : jQuery.param(data); var inputs = ''; $.each(data.split('&'), function () { var pair = this.split('='); inputs += ''; }); $('
').appendTo('body').submit().remove(); }; }; $.modalOpen = function (options) { var defaults = { id: null, title: '系统提示', width: "100px", height: "100px", url: '', shade: 0.3, btn: ['确定', '关闭'], btnclass: ['btn btn-primary', 'btn btn-danger'], callBack: null }; var options = $.extend(defaults, options); var _width = top.$(window).width() > parseInt(options.width.replace('px', '')) ? options.width : top.$(window).width() + 'px'; var _height = top.$(window).height() > parseInt(options.height.replace('px', '')) ? options.height : top.$(window).height() + 'px'; top.layer.open({ id: options.id, type: 2, shade: options.shade, title: options.title, fix: false, area: [_width, _height], content: options.url, btn: options.btn, maxmin: true, btnclass: options.btnclass, yes: function () { options.callBack(options.id) }, cancel: function () { return true; } }); } $.modalOpen1 = function (options) { var defaults = { id: null, title: '系统提示', width: "100px", height: "100px", url: '', shade: 0.3, btn: ['确定'], btnclass: ['btn btn-primary', 'btn btn-danger'], callBack: null }; var options = $.extend(defaults, options); var _width = top.$(window).width() > parseInt(options.width.replace('px', '')) ? options.width : top.$(window).width() + 'px'; var _height = top.$(window).height() > parseInt(options.height.replace('px', '')) ? options.height : top.$(window).height() + 'px'; top.layer.open({ id: options.id, type: 2, closeBtn:0, shade: options.shade, title: options.title, fix: false, area: [_width, _height], content: options.url, btn: options.btn, btnclass: options.btnclass, yes: function () { options.callBack(options.id) }, cancel: function () { options.callBack(options.id) } }); } $.modalConfirm = function (content, callBack) { top.layer.confirm(content, { icon: "fa-exclamation-circle", title: "提示信息", btn: ['确认', '取消'], btnclass: ['btn btn-primary', 'btn btn-danger'], }, function () { callBack(true); }, function () { callBack(false) }); } $.modalConfirm2 = function (content, callBack) { top.layer.confirm(content, { icon: "fa-exclamation-circle", title: "系统消息", btn: ['确定', '取消'], btnclass: ['btn btn-primary', 'btn btn-danger'], }, function () { callBack(true); }, function () { callBack(false) }); } $.modalAlert = function (content, type) { var icon = ""; if (type == 'success') { icon = "fa-check-circle"; } if (type == 'error') { icon = "fa-times-circle"; } if (type == 'warning') { icon = "fa-exclamation-circle"; } top.layer.alert(content, { icon: icon, //title: "System Message", title: "系统信息", btn: ['确认'], btnclass: ['btn btn-primary'], }); } $.modalMsg = function (content, type) { if (type != undefined) { var icon = ""; if (type == 'success') { icon = "fa-check-circle"; } if (type == 'error') { icon = "fa-times-circle"; } if (type == 'warning') { icon = "fa-exclamation-circle"; } top.layer.msg(content, { icon: icon, time: 4000, shift: 5 }); top.$(".layui-layer-msg").find('i.' + icon).parents('.layui-layer-msg').addClass('layui-layer-msg-' + type); } else { top.layer.msg(content); } } $.modalClose = function () { var index = top.layer.getFrameIndex(window.name); //先得到当前iframe层的索引 var $IsdialogClose = top.$("#layui-layer" + index).find('.layui-layer-btn').find("#IsdialogClose"); var IsClose = $IsdialogClose.is(":checked"); if ($IsdialogClose.length == 0) { IsClose = true; } if (IsClose) { top.layer.close(index); } else { location.reload(); } } $.submitForm = function (options) { var defaults = { url: "", param: [], loading: "正在提交数据...", //loading: "Submission of data...", success: null, close: true }; var options = $.extend(defaults, options); $.loading(true, options.loading); window.setTimeout(function () { if ($('[name=__RequestVerificationToken]').length > 0) { options.param["__RequestVerificationToken"] = $('[name=__RequestVerificationToken]').val(); } $.ajax({ url: options.url, data: options.param, type: "post", dataType: "json", success: function (data) { if (data.state == "success") { options.success(data); $.modalMsg(data.message, data.state); if (options.close == true) { $.modalClose(); } } else { $.modalAlert(data.message, data.state); } }, error: function (XMLHttpRequest, textStatus, errorThrown) { $.loading(false); $.modalMsg(errorThrown, "error"); }, beforeSend: function () { $.loading(true, options.loading); }, complete: function () { $.loading(false); } }); }, 500); } $.submitForm2 = function (options) { var defaults = { url: "", param: [], loading: "正在提交数据...", //loading: "Submission of data...", success: null, close: true }; var options = $.extend(defaults, options); $.loading(true, options.loading); window.setTimeout(function () { if ($('[name=__RequestVerificationToken]').length > 0) { options.param["__RequestVerificationToken"] = $('[name=__RequestVerificationToken]').val(); } $.ajax({ url: options.url, data: options.param, type: "post", dataType: "json", success: function (data) { if (data.state == "success") { options.success(data); $.modalAlert(data.message, data.state); if (options.close == true) { $.modalClose(); } } else { $.modalAlert(data.message, data.state); } }, error: function (XMLHttpRequest, textStatus, errorThrown) { $.loading(false); $.modalMsg(errorThrown, "error"); }, beforeSend: function () { $.loading(true, options.loading); }, complete: function () { $.loading(false); } }); }, 500); } $.submitForm3 = function (options) { var defaults = { url: "", param: [], loading: "正在提交数据...", //loading: "Submission of data...", success: null, close: true }; var options = $.extend(defaults, options); $.loading(true, options.loading); window.setTimeout(function () { //if ($('[name=__RequestVerificationToken]').length > 0) { // options.param["__RequestVerificationToken"] = $('[name=__RequestVerificationToken]').val(); //} $.ajax({ url: options.url, data: options.param, type: "post", dataType: "json", success: function (data) { if (data.state == "success") { options.success(data); $.modalMsg(data.message, data.state); if (options.close == true) { //window.parent.reloadData(); $.modalClose(); } } else { $.modalAlert(data.message, data.state); } }, error: function (XMLHttpRequest, textStatus, errorThrown) { $.loading(false); $.modalMsg(errorThrown, "error"); }, beforeSend: function () { $.loading(true, options.loading); }, complete: function () { $.loading(false); } }); }, 500); } $.deleteForm = function (options) { var defaults = { prompt: "注:您确定要删除该项数据吗?", //prompt: "Note: are you sure you want to delete this data?", url: "", param: [], loading: "正在删除数据...", //loading: "Deleting data...", success: null, close: true }; var options = $.extend(defaults, options); if ($('[name=__RequestVerificationToken]').length > 0) { options.param["__RequestVerificationToken"] = $('[name=__RequestVerificationToken]').val(); } $.modalConfirm(options.prompt, function (r) { if (r) { $.loading(true, options.loading); window.setTimeout(function () { $.ajax({ url: options.url, data: options.param, type: "post", dataType: "json", success: function (data) { if (data.state == "success") { options.success(data); $.modalMsg(data.message, data.state); } else { $.modalAlert(data.message, data.state); } }, error: function (XMLHttpRequest, textStatus, errorThrown) { $.loading(false); $.modalMsg(errorThrown, "error"); }, beforeSend: function () { $.loading(true, options.loading); }, complete: function () { $.loading(false); } }); }, 500); } }); } $.jsonWhere = function (data, action) { if (action == null) return; var reval = new Array(); $(data).each(function (i, v) { if (action(v)) { reval.push(v); } }) return reval; } $.fn.jqGridRowValue = function () { var $grid = $(this); var selectedRowIds = $grid.jqGrid("getGridParam", "selarrrow"); if (selectedRowIds != "") { var json = []; var len = selectedRowIds.length; for (var i = 0; i < len ; i++) { var rowData = $grid.jqGrid('getRowData', selectedRowIds[i]); json.push(rowData); } return json; } else { return $grid.jqGrid('getRowData', $grid.jqGrid('getGridParam', 'selrow')); } } $.fn.formValid = function () { return $(this).valid({ errorPlacement: function (error, element) { element.parents('.formValue').addClass('has-error'); element.parents('.has-error').find('i.error').remove(); element.parents('.has-error').append(''); $("[data-toggle='tooltip']").tooltip(); if (element.parents('.input-group').hasClass('input-group')) { element.parents('.has-error').find('i.error').css('right', '33px') } }, success: function (element) { element.parents('.has-error').find('i.error').remove(); element.parent().removeClass('has-error'); } }); } $.fn.formSerialize = function (formdate) { var element = $(this); if (!!formdate) { for (var key in formdate) { var $id = element.find('#' + key); var value = $.trim(formdate[key]).replace(/ /g, ''); var type = $id.attr('type'); if ($id.hasClass("select2-hidden-accessible")) { type = "select"; } switch (type) { case "checkbox": if (value == "true") { $id.attr("checked", 'checked'); } else { $id.removeAttr("checked"); } break; case "select": $id.val(value).trigger("change"); break; default: $id.val(value); break; } }; return false; } var postdata = {}; element.find('input,select,textarea').each(function (r) { var $this = $(this); var id = $this.attr('id'); var type = $this.attr('type'); switch (type) { case "checkbox": postdata[id] = $this.is(":checked"); break; default: var value = $this.val() == "" ? " " : $this.val(); if (!$.request("keyValue")) { value = value.replace(/ /g, ''); } postdata[id] = value; break; } }); if ($('[name=__RequestVerificationToken]').length > 0) { postdata["__RequestVerificationToken"] = $('[name=__RequestVerificationToken]').val(); } return postdata; }; $.fn.bindText = function (options) { var defaults = { id: "id", text: "text", search: false, url: "", param: [], change: null }; var options = $.extend(defaults, options); var $element = $(this); if (options.url != "") { $.ajax({ url: options.url, data: options.param, dataType: "text", async: false, success: function (data) { $element.val(data); } }); } } $.fn.bindSelect = function (options) { var defaults = { id: "id", text: "text", search: false, url: "", param: [], change: null }; var options = $.extend(defaults, options); var $element = $(this); if (options.url != "") { $.ajax({ url: options.url, data: options.param, dataType: "json", async: false, success: function (data) { $.each(data, function (i) { $element.append($("").val(data[i][options.id]).html(data[i][options.text])); }); $element.select2({ minimumResultsForSearch: options.search == true ? 0 : -1 }); $element.on("change", function (e) { if (options.change != null) { options.change(data[$(this).find("option:selected").index()]); } $("#select2-" + $element.attr('id') + "-container").html($(this).find("option:selected").text().replace(/ /g, '')); }); } }); } else { $element.select2({ minimumResultsForSearch: -1 }); } } $.fn.authorizeButton = function () { var moduleId = top.$(".NFine_iframe:visible").attr("id").substr(6); var dataJson = top.clients.authorizeButton[moduleId]; var $element = $(this); $element.find('a[authorize=yes]').attr('authorize', 'no'); if (dataJson != undefined) { $.each(dataJson, function (i) { $element.find("#" + dataJson[i].F_EnCode).attr('authorize', 'yes'); }); } $element.find("[authorize=no]").parents('li').prev('.split').remove(); $element.find("[authorize=no]").parents('li').remove(); $element.find('[authorize=no]').remove(); } //dataGrid方法里面传入表格对象,包括表格的columns等等 传入的也是一个json对象 $.fn.dataGrid = function (options) { var defaults = { datatype: "json", autowidth: true, rownumbers: true, shrinkToFit: false, gridview: true }; var options = $.extend(defaults, options);//extend方法是将上卖弄的defaluts这个json对象和传递进来的options对象进行了合并组成了一个新的options var $element = $(this); //点击list行触发事件在这里 options["onSelectRow"] = function (rowid) { if ($(this).jqGrid("getGridParam", "selrow") != null) { var length = $(this).jqGrid("getGridParam", "selrow").length; var $operate = $(".operate"); if (length > 0) { $operate.animate({ "left": 0 }, 200); } else { $operate.animate({ "left": '-100.1%' }, 200); } $operate.find('.close').click(function () { $operate.animate({ "left": '-100.1%' }, 200); }) } }; $element.jqGrid(options); }; //我自己封的 $.ClickOperate = function () { var $operate = $(".operates"); $operate.animate({ "left": 0 }, 200); // $operate.animate({ "left": '-100.1%' }, 200); $operate.find('.close').click(function () { $operate.animate({ "left": '-100.1%' }, 200); }) }