Есть ли способ получить значение из другого foreach? - PullRequest
0 голосов
/ 19 февраля 2019

Я пытаюсь сделать обновление с помощью перетаскивания для поля в laravel.

Все бэкенд работает, база данных обновляется, если я жестко закодировал значения, но мне нужно вытащить 2 переменные в javascript.

Я загружаю jquery 3.3.1 ранее в сценарии.

У меня проблема с идентификатором пользователя при публикации данных.Он либо всегда использует последний идентификатор в списке, либо, если я использую переменную userIds, он передает массив.

<style href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/themes/base/jquery-ui.css"></style>
<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
<script>
   $(function() {
      @foreach($users as $user)
      $("#draggable-{{$user->id}}").val({{$user->id}}).draggable({
         refreshPositions: true,
         snap: true,
         revert: true,
      });
      @endforeach
      var userIds = {{$userID}};
      userIds.forEach(function(element) {
         if(element === {{$user->id}}) {
            var userId = {{$user->id}};
         }
      });
      @foreach($funders as $funder)
      $("#droppable-{{$funder->funder}}").droppable({
         activeClass: "active",
         hoverClass:  "hover",
         drop: function (event, ui) {
            $.ajax({
               headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
               type: "POST",
               url: '{{route('update-funders')}}',
               dataType: 'json',
               data: {'funder':$("#droppable-{{$funder->funder}}").attr('data'), 'id': userId },
            }).done(function( data ) {
               // console.log(data);
               // var result = $.parseJSON(data);
            });
         }
      });
      @endforeach
   });
</script>

1 Ответ

0 голосов
/ 19 февраля 2019
$("#droppable-{{$funder->funder}}").droppable({
            activeClass: "active",
            hoverClass:  "hover",
            drop: function (event, ui) {
                let userId = ui.draggable.attr('data-id');
                $.ajax({
                    headers: {'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')},
                    type: "POST",
                    url: '{{route('update-funders')}}',
                    dataType: 'json',
                    data: {'funder':$("#droppable-{{$funder->funder}}").attr('data'), 'id': userId },
                }).done(function( data ) {
                    // var result = $.parseJSON(data);
                });
            }
        });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...