select-script.blade.php 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. @include('admin::scripts.select')
  2. <script require="@select2?lang={{ config('app.locale') === 'en' ? '' : str_replace('_', '-', config('app.locale')) }}" init="{!! $selector !!}">
  3. var configs = {!! admin_javascript_json($configs) !!};
  4. @yield('admin.select-ajax')
  5. @if(isset($remoteOptions))
  6. $.ajax({!! admin_javascript_json($remoteOptions) !!}).done(function(data) {
  7. configs.data = data;
  8. $this.each(function (_, select) {
  9. select = $(select);
  10. select.select2(configs);
  11. var value = select.data('value') + '';
  12. if (value) {
  13. select.val(value.split(',')).trigger("change")
  14. }
  15. });
  16. });
  17. @else
  18. $this.select2(configs);
  19. @endif
  20. {!! $cascadeScript !!}
  21. </script>
  22. @if(isset($loads))
  23. {{--loads联动--}}
  24. <script once>
  25. var selector = '{!! $selector !!}';
  26. var fields = '{!! $loads['fields'] !!}'.split('^');
  27. var urls = '{!! $loads['urls'] !!}'.split('^');
  28. $(document).off('change', selector);
  29. $(document).on('change', selector, function () {
  30. Dcat.helpers.loadFields(this, {
  31. group: '.fields-group',
  32. urls: urls,
  33. fields: fields,
  34. textField: "{{ $loads['textField'] }}",
  35. idField: "{{ $loads['idField'] }}",
  36. });
  37. });
  38. $(selector).trigger('change');
  39. </script>
  40. @endif
  41. @yield('admin.select-load')