script.blade.php 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <script>
  2. function LA() {}
  3. LA.lang = {!! json_encode(trans('admin.client') ?: []) !!};
  4. LA.components = {booting:[]};
  5. LA.ready = function (callback, win) {
  6. if (!win || win === window) {
  7. if (typeof LA.pjaxresponse == 'undefined') {
  8. return $(callback, win || window);
  9. }
  10. return $(document, win || window).one('pjax:script', callback);
  11. }
  12. var proxy = function (e) {
  13. win.$(win.$('#pjax-container')).one('pjax:script', proxy);
  14. callback(e);
  15. };
  16. win.LA.ready(proxy);
  17. };
  18. LA._form_ = {
  19. before: [], success: [], error: []
  20. };
  21. {{--注册表单提交前钩子事件--}}
  22. {{--@param {function} call 返回 false 可以阻止表单提交--}}
  23. LA.beforeSubmit = function (call) {
  24. typeof call == 'function' && (LA._form_.before = [call]);
  25. };
  26. {{--@param {function} success 提交成功事件,返回 false 可以阻止默认的表单事件--}}
  27. {{--@param {function} error 提交出错事件,返回 false 可以阻止默认的表单事件--}}
  28. LA.submitted = function (success, error) {
  29. typeof success == 'function' && (LA._form_.success = [success]);
  30. typeof error == 'function' && (LA._form_.error = [error]);
  31. };
  32. {{--
  33. 注册页面初始化事件,相当于:
  34. $(fn);
  35. $(document).on('pjax:complete', fn);
  36. --}}
  37. LA.booting = function (fn) {
  38. typeof fn == 'function' && (LA.components.booting.push(fn));
  39. };
  40. </script>