有没有办法从不同的 foreach 中获取值?
Posted
技术标签:
【中文标题】有没有办法从不同的 foreach 中获取值?【英文标题】:is there a way to get a value from a different foreach? 【发布时间】:2019-07-12 20:42:23 【问题描述】:我正在尝试对 laravel 中的字段进行拖放更新。
所有后端的东西都有效,如果我硬编码值,数据库会更新,但我需要在 javascript 中提取 2 个变量。
我在脚本的前面加载了 jquery 3.3.1。
我在发布数据时遇到了 userId 问题。它要么总是使用列表中的最后一个 ID,要么如果我使用变量 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>
【问题讨论】:
你能解释一下逻辑试图实现什么吗? Whats $userID, IS THE $user is theAuth::user()
and $users 是所有用户的集合?
【参考方案1】:
$("#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);
);
);
【讨论】:
以上是关于有没有办法从不同的 foreach 中获取值?的主要内容,如果未能解决你的问题,请参考以下文章