common.js 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211
  1. function upload(obj){
  2. obj.parents('.form-group').find('input').click();
  3. }
  4. $('.img-file').on("change",function(){
  5. var index = layer.load();
  6. var _this = $(this);
  7. var fd = new FormData();
  8. fd.append("image", _this.get(0).files[0]);
  9. fd.append("path",_this.attr('data-path'));
  10. var index = layer.load();
  11. $.ajax({
  12. url:"/admin/upload",
  13. type:"post",
  14. cache : false,
  15. contentType : false,
  16. processData : false,
  17. dataType: "json",
  18. data:fd,
  19. headers: {
  20. 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
  21. },
  22. success:function(res){
  23. layer.close(index);
  24. if(res.code == 200){
  25. _this.parents('.form-group').find('.img-yl').empty().append('<img src="'+res.data.filename+'">').show();
  26. _this.parents('.form-group').find('.image-path').val(res.data.filename);
  27. _this.parents('.form-group').find('.file-upload-info').val(res.data.filename);
  28. }else{
  29. layer.msg(res.msg);
  30. }
  31. },error:function(){
  32. layer.close(index);
  33. }
  34. });
  35. })
  36. $('input.required').blur(function(){
  37. if($(this).val() == ''){
  38. $(this).css('border','1px solid #dd4b39');
  39. }else{
  40. $(this).css('border','1px solid #ebedf2');
  41. }
  42. })
  43. function myRequest(url,type,data,success) {
  44. var index = layer.load();
  45. $.ajax({
  46. url:url,
  47. type:type,
  48. data:data,
  49. headers: {
  50. 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
  51. },
  52. dataType:"json",
  53. complete:function(){
  54. layer.close(index);
  55. },
  56. success:success,
  57. error:function () {
  58. layer.close(index);
  59. layer.msg("请求失败!", function(){});
  60. }
  61. });
  62. }
  63. function myConfirm(msg,confirm){
  64. layer.confirm(msg, {
  65. btn: ['确定','取消'] //按钮
  66. }, confirm, function(){
  67. });
  68. }
  69. $.fn.serializeObject=function(){
  70. var obj=new Object();
  71. $.each(this.serializeArray(),function(index,param){
  72. if(!(param.name in obj)){
  73. obj[param.name]=param.value;
  74. }else if($.isArray(obj[param.name])){
  75. obj[param.name].push(param.value);
  76. }else{
  77. obj[param.name]=[obj[param.name], param.value];
  78. }
  79. });
  80. return obj;
  81. };
  82. function checkForm() {
  83. var mark = 0;
  84. $('input.required').each(function(){
  85. if($(this).val() == ''){
  86. mark = 1;
  87. $(this).css('border','1px solid #dd4b39');
  88. }else{
  89. $(this).css('border','1px solid #ebedf2');
  90. }
  91. });
  92. $('select.required').each(function(){
  93. if($(this).val() == ''){
  94. mark = 1;
  95. $(this).css('outline','1px solid #dd4b39');
  96. }else{
  97. $(this).css('outline','1px solid #ebedf2');
  98. }
  99. });
  100. if(mark == 1){
  101. layer.msg('所选字段不能为空', function(){
  102. });
  103. return false;
  104. }
  105. return true;
  106. }
  107. function cutStr(len){
  108. var obj=$('.len');
  109. for (i=0;i<obj.length;i++){
  110. text = obj[i].innerHTML.replace(/\s*/g,"");
  111. obj[i].innerHTML = text.substring(0,len)+'…';
  112. }
  113. }
  114. $('.batch-all').click(function(){
  115. if(this.checked) {
  116. $(".td-check").prop('checked',true);
  117. }else {
  118. $(".td-check").prop('checked',false);
  119. }
  120. });
  121. $(".td-check").click(function(){
  122. if($(".td-check").length == $(".td-check:checked").length) {
  123. $('.batch-all').prop('checked',true);
  124. }else{
  125. $('.batch-all').prop('checked',false);
  126. }
  127. });
  128. function batch(url){
  129. var ids = "";
  130. if($(".td-check:checked").length == 0){
  131. layer.msg("请先选择要操作的数据");
  132. return false;
  133. }
  134. $(".td-check:checked").each(function(index){
  135. if(index == 0){
  136. ids += $(this).val();
  137. }else{
  138. ids += ","+$(this).val();
  139. }
  140. })
  141. myConfirm("是否继续批量操作?",function(){
  142. myRequest(url+ids,"post",{},function(res){
  143. layer.msg(res.msg);
  144. setTimeout(function(){
  145. window.location.reload();
  146. },1500);
  147. },function(){
  148. layer.msg(res.msg, function(){});
  149. });
  150. });
  151. }
  152. $(function () {
  153. $('.layer-dialog').on('click', function (e) {
  154. var url = $(e.target).attr('href');
  155. layer.open({
  156. type: 2,
  157. title: $(e.target).attr('data-title'),
  158. shadeClose: true,
  159. shade: 0.8,
  160. area: ['80%', '60%'],
  161. content: url
  162. });
  163. return false;
  164. });
  165. $('.layer-switch').on('click', function (e) {
  166. var remind = $(e.target).attr('data-remind');
  167. var doRequest = function () {
  168. myRequest($(e.target).attr('href'), 'get', {}, function (res) {
  169. layer.msg(res.msg);
  170. setTimeout(function(){
  171. window.location.reload();
  172. },1500);
  173. });
  174. };
  175. if (remind) {
  176. if (confirm(remind)) {
  177. doRequest();
  178. }
  179. return false;
  180. }
  181. doRequest();
  182. return false;
  183. });
  184. $('.form-ajax').on('submit', function (e) {
  185. var formData = new FormData(e.target);
  186. $.ajax({
  187. url: $(e.target).attr('action'),
  188. type:'post',
  189. data: formData,
  190. headers: {
  191. 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
  192. },
  193. dataType:"json",
  194. processData: false,
  195. contentType: false,
  196. success:function (res) {
  197. layer.msg(res.msg);//弹出提示
  198. setTimeout(function(){
  199. window.location.reload();
  200. }, 1500);
  201. },
  202. error:function () {
  203. layer.msg("请求失败!", function(){});
  204. }
  205. });
  206. return false;
  207. });
  208. });