select.blade.php 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. <div class="input-group input-group-sm">
  2. <select style="width: 100%;" class="grid-column-select" data-url="{{ $url }}" data-name="{{ $column }}">
  3. @foreach($options as $k => $v)
  4. @php($selected = Dcat\Admin\Support\Helper::equal($k, $value) ? 'selected' : '')
  5. <option value="{{ $k }}" {{ $selected }}>{{ $v }}</option>
  6. @endforeach
  7. </select>
  8. </div>
  9. <script require="@select2">
  10. $('.grid-column-select').off('change').select2().on('change', function(){
  11. var value = $(this).val(),
  12. name = $(this).data('name'),
  13. url = $(this).data('url'),
  14. data = {},
  15. reload = '{{ $refresh }}';
  16. if (name.indexOf('.') === -1) {
  17. data[name] = value;
  18. } else {
  19. name = name.split('.');
  20. data[name[0]] = {};
  21. data[name[0]][name[1]] = value;
  22. }
  23. Dcat.NP.start();
  24. $.put({
  25. url: url,
  26. data: data,
  27. success: function (d) {
  28. Dcat.NP.done();
  29. Dcat.success(d.data.message || d.message);
  30. reload && Dcat.reload();
  31. }
  32. });
  33. });
  34. </script>