Laravel5.1 你可以将增量变量传递给 sub-view

Laravel5.1 can you passed an incremental variable in to a sub-view

我正在尝试将增量变量传递给 blade 模板子视图以将数字添加到 class 名称。

@for($x=1; $x < 4; $x++)
    <div class="col-md-3">
        {!! Form::label('amenIcon'.$x,'Amenity Icon '.$x) !!}
        {!! Form::select('amenIcon'.$x,
         [null =>'Choose Icon'] + $iconDirectory)
            !!}
    </div>
    @include('portal._iconModals')
@endfor

sub-view portal._iconModals

<div class="modal-content">
        <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal">&times;</button>
            <h4 class="modal-title">Choose Icons</h4>
        </div>
        <div class="modal-body">
            <div class="row">
                <div class="col-md-12" id="bsnImage">
                    @foreach($brandSocialIcons as $bIcons)
                        <a href="javascript:void(0);" class="iconChoice{{$x}}"><img src="../../../../storage/icons/{{$bIcons}}"></a>
                    @endforeach
                </div>
            </div>
        </div>
        <div class="modal-footer">
            <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
        </div>
    </div>
</div>

我想增加 class 名称 iconChoice,因为我有 3 个 select 字段,其选项使用相同的子视图,但因为 class 名称,当我选择一个带有 iconChoice class 的图像中,它为所有 3 个 select 列表选择了它。

这里是js代码

$( "#amenIcon1" ).click(function() {

     $('.iconChoice').click(function() {
         var $thumb = $(this);
         console.log($thumb);

         var icon1 = $thumb.find('img').attr('src');
         displayIcon1(icon1)
     });
     function displayIcon1(icon1) {
         $("#icon1Thumb").attr("src",icon1);
     }
 });

可能不是最好的解释,但如果需要,我会详细说明。谢谢

如果你想用@include传递一个变量,你可以这样做:

@include('portal._iconModals', ['x' => $x])

希望对您有所帮助!