cari

Rumah  >  Soal Jawab  >  teks badan

Cara menggunakan function old() dalam templat Blade untuk mendapatkan elemen tatasusunan terakhir

<p>Bagaimana untuk mendapatkan elemen terakhir tatasusunan 'g3' di dalam fungsi lama() tanpa mengetahui bilangan elemen. </p> <pre class="brush:php;toolbar:false;"><select name="g3[]"berbilang="berbilang"> <nilai pilihan="1" @if (lama('g3')=="1" ) {{ 'dipilih' }} @endif >mengangkat</option> <nilai pilihan="2" @if (lama('g3')=="2" ) {{ 'dipilih' }} @endif >berjoging</option> <nilai pilihan="3" @if (lama('g3')=="3" ) {{ 'dipilih' }} @endif >tidur</option> </select> <div {!! old('g3') != 3 ? '':' style="display: none"' !!}> <p>Bagaimana untuk mendapatkan item yang dipilih dalam div. </p>
P粉309989673P粉309989673465 hari yang lalu566

membalas semua(2)saya akan balas

  • P粉276876663

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

    Seperti yang dinyatakan dalam komen oleh @apokryfos:

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

    Arahan tambahan

    Berdasarkan komen anda, demo di bawah sepatutnya cukup:

    <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>
    

    balas
    0
  • P粉596191963

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

    Jika anda old值是array,你可以使用in_array pengganti.
    Mendaftarold('g3')是否存在,然后检查value是否在数组old('g3')Masuk

    <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>

    Bagaimana untuk mendapatkan elemen terakhir tatasusunan, anda boleh mencuba ini Fungsi
    array_values() mengembalikan tatasusunan yang mengandungi semua nilai tatasusunan.
    Petua: Tatasusunan yang dikembalikan akan mempunyai kunci angka, bermula dari 0 dan meningkat secara beransur-ansur.

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

    balas
    0
  • Batalbalas