recherche

Maison  >  Questions et réponses  >  le corps du texte

Comment utiliser la fonction old() dans le modèle Blade pour obtenir le dernier élément du tableau

<p>Comment obtenir le dernier élément du tableau 'g3' à l'intérieur de la fonction old() sans connaître le nombre d'éléments. </p> <pre class="brush:php;toolbar:false;"><select name="g3[]" multiple="multiple"> <option value="1" @if (old('g3')=="1" ) {{ 'selected' }} @endif >lifting</option> <option value="2" @if (old('g3')=="2" ) {{ 'selected' }} @endif >jogging</option> <option value="3" @if (old('g3')=="3" ) {{ 'selected' }} @endif >dormir</option> </sélectionner> <div {!! old('g3') != 3 ? '':' style="affichage : aucun" !!}> <p>Comment obtenir l'élément sélectionné dans un div. </p>
P粉309989673P粉309989673459 Il y a quelques jours565

répondre à tous(2)je répondrai

  • P粉276876663

    P粉2768766632023-09-03 17:53:34

    Comme mentionné dans les commentaires de @apokryfos :

    \Illuminate\Support\Arr::last(old('g3') ?? []) != 3
    

    Instructions supplémentaires

    Sur la base de vos commentaires, la démo suivante devrait suffire :

    <div>
        @php($data = [1 => "举重", 2 => "慢跑", 3 => "睡觉"])
    
        <select name="g3[]" id="g3" multiple>
            @foreach($data as $id => $v)
                <option value="{{$id}}" {{in_array($id, old('g3') ?? []) ? 'selected' : ''}}>
                    {{$v}}
                </option>
            @endforeach
        </select>
    
        <div style="display: {{!in_array(array_flip($data)["睡觉"], old('g3') ?? []) ? 'none': ''}};"> 不可见</div>
    </div>
    

    répondre
    0
  • P粉596191963

    P粉5961919632023-09-03 12:59:05

    Si votre old值是array,你可以使用in_array substitut.
    Vérificationold('g3')是否存在,然后检查value是否在数组old('g3')In

    <select name="g3[]" multiple="multiple">
       <option value="1" @if (old('g3') && in_array('1', old('g3'))) selected @endif >lifting</option>
       <option value="2" @if (old('g3') && in_array('2', old('g3'))) selected @endif >jogging</option>
       <option value="3" @if (old('g3') && in_array('3', old('g3'))) selected @endif >sleeping</option>  
    </select>

    Comment obtenir le dernier élément d'un tableau, vous pouvez essayer ceci La fonction
    array_values() renvoie un tableau contenant toutes les valeurs du tableau.
    Astuce : Le tableau renvoyé aura des touches numériques, commençant à 0 et augmentant progressivement.

    @if (old('g3'))
       @php
          $size = count(array_values(old('g3')));
          $lastElement = old('g3')[$size - 1];
       @endphp
       // 做一些操作
    @endif

    répondre
    0
  • Annulerrépondre