首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >count++ {{ $loop->index }} & jquery

count++ {{ $loop->index }} & jquery
EN

Stack Overflow用户
提问于 2021-11-14 08:10:34
回答 1查看 106关注 0票数 2

使用Laravel刀片模板,是否有一种方法可以在foreach中包含一个变量并每次递增,或者更好的方法是什么?

代码语言:javascript
复制
<!doctype html>
<html lang="en" dir="ltr">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="csrf-token" content="{{ csrf_token() }}">
    <link rel="shortcut icon" href="{{ asset('favicon.ico') }}" type="image/x-icon"/>
    <link href="{{ asset('themes/css/bootstrap.min.css') }}" rel="stylesheet">
    <link href="{{ asset('themes/fontawesome/css/all.min.css') }}" rel="stylesheet">
    <link href="{{ asset('themes/css/style.css') }}" rel="stylesheet">
    <title>Test</title>
</head>
<body>
<div class="d-flex min-vh-100 justify-content-center align-items-center flex-column">
    @foreach($colors as $color)
        <div id="showFilters">
            <input type="text" id="name" class="form-control mb-5" name="filters[{{ $loop->index }}][name]" value="{{ $color->color_code }}">
        </div>
    @endforeach
    <a id="addFilter" class="bg-primary text-white pt-2 pb-2 pe-3 ps-3 rounded-circle cursor-pointer">
        <i class="fas fa-plus"></i>
    </a>
</div>
<script src="{{ asset('themes/js/bootstrap.bundle.min.js') }}"></script>
<script src="{{ asset('themes/js/jquery-3.6.0.min.js') }}"></script>
<script>
    let count = 0;
    $('#addFilter').click(function () {
        count++;
        let html = '<input type="text" id="name" class="form-control mb-5" name="filters['+count+'][name]">';
        $('#showFilters').append(html);
    });
</script>
</body>
</html>
EN

回答 1

Stack Overflow用户

发布于 2021-11-14 08:31:42

是的,这是可能的。如果你有一个普通的集合/数组,键等于索引,你可以这样写foreach循环:

代码语言:javascript
复制
@foreach($colors as $key => $color)

然后像这样使用它:name="filters[{{$key}}][name]"

如果您有一个命名数组,您可以使用for(each)循环并包含一些php @php来定义和递增变量。

代码语言:javascript
复制
@php
  $counter = 0;
@endphp
@foreach($colors as $color)
  .....
  @php
    $counter++;
  @endphp
@endforeach

您还需要创建唯一的ids,如:id="name-{{$key}}"。这样,在jquery代码中,您就可以从id中获得正确的键。或者,您可以查看数据属性。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69961343

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档