common.js 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. // 获取项目地址
  2. var $location = (window.location + '').split('/');
  3. var $path = document.location.pathname;
  4. var $basePath = $location[0] + '//' + $location[2] + $path.substr(0, $path.substr(1).indexOf("/")+1);
  5. // 全局内容区域
  6. var $initContainer = $("#initContainer");
  7. // 监控定时器
  8. var timer;
  9. // ******************* 插件封装 ***************************
  10. // 全局提示框
  11. function bootGrowl(data, type) {
  12. $.bootstrapGrowl(data, { // data为提示信息
  13. type: type == undefined ? 'success' : type,// type指提示类型
  14. delay: 1000,// 提示框显示时间
  15. allow_dismiss: true // 显示取消提示框
  16. });
  17. }
  18. // 跳转主页
  19. function backIndexPage() {
  20. // 加载页面
  21. doLoader("/index?refresh=" + new Date().getTime());
  22. }
  23. // 美化SQL
  24. function beautifySql(){
  25. var $sql = $("#sql");
  26. var $tmp = $sql.attr('tmp');
  27. if(null == $tmp){
  28. $sql.attr('tmp', $sql.val());
  29. $sql.val(sqlFormatter.format($sql.val()));
  30. return;
  31. }
  32. $sql.val($tmp);
  33. $sql.removeAttr('tmp');
  34. }
  35. // ******************* 扩展JS表单方法 ***************************
  36. $.fn.serializeJson = function () {
  37. var o = {};
  38. var a = this.serializeArray();
  39. $.each(a, function () {
  40. if (o[this.name] !== undefined) {
  41. if (!o[this.name].push) {
  42. o[this.name] = [o[this.name]];
  43. }
  44. o[this.name].push(this.value || '');
  45. } else {
  46. o[this.name] = this.value || '';
  47. }
  48. });
  49. return o;
  50. };
  51. // 全局加载页面
  52. function doLoader(url){
  53. // 加载页面
  54. $initContainer.load($basePath + url);
  55. }
  56. // 异常请求
  57. function doRequest(action, data){
  58. $.loadingT(false);
  59. // 异常请求:302
  60. if (!(data instanceof Object)) {
  61. bootGrowl("会话过期, 3秒后将访问登录主页...", "danger");
  62. setTimeout(function () {
  63. location.href = $basePath;
  64. }, 3000);
  65. } else {
  66. action(data);
  67. }
  68. }
  69. // 异常响应
  70. function doErrorResponse(xhr, status, info) {
  71. $.loadingT(false);
  72. bootGrowl("访问异常,请刷新或重试.", "danger");
  73. }
  74. // 全局Ajax post
  75. function doPoster(url, params, action) {
  76. $.loadingT(true);
  77. $.post($basePath + url, params, function (data) {
  78. doRequest(action, data);
  79. }).error(function (xhr, status, info) {
  80. doErrorResponse(xhr, status, info);
  81. });
  82. }
  83. // 全局Ajax get
  84. function doGetter(url, params, action, loading) {
  85. if(loading == undefined || loading == true){
  86. $.loadingT(true);
  87. }
  88. $.get($basePath + url, params, function (data) {
  89. doRequest(action, data);
  90. }).error(function (xhr, status, info) {
  91. doErrorResponse(xhr, status, info);
  92. });
  93. }
  94. // 全局Ajax get, 不显示加载动画
  95. function doGetWithoutLoading(url, params, action) {
  96. doGetter(url, params, action, false);
  97. }