如何根据 laravel 中选定的下拉菜单显示 table 内容

How to show table content based on selected dropdown menu in laravel

这是视图,table

上方的下拉菜单

这是下拉菜单,我想将所选值赋予它 table 数据

<select class="form-control form-select" name="nomor_pertemuan" id="nomor_pertemuan">
    <option value="">-</option>
    @for($i=1; $i<11; $i++)
       <option value={{ $i }}>{{ $i }}</option>
     @endfor
</select>

这是table的内容,每行有两个复选框,只能选一个,我要检查每个输入,是否选中需要下拉值,我尝试过 ajax 但它似乎不起作用,因为我对此了解不多。

@foreach($kehadiran as $data)
  <tr>
     <td>{{ $loop->iteration }}</td>
     <td>{{ $data->peserta->npm_peserta }}</td>
     <td>{{ $data->peserta->nama_peserta }}</td>
     <td style="text-align: center;" class="align-middle">
         <input type="hidden" name="{{ 'k'.$loop->iteration }}" value="">
         <input type="checkbox" class="{{ 'k'.$loop->iteration }} check" name="{{ 'k'.$loop->iteration }}" id="hadir" value="Hadir" {{ $data->{'pertemuan_'.$dropdown_value} == "Hadir" ? "Checked" : '' }}/>
     </td>
     <td style="text-align: center;" class="align-middle">
         <input type="checkbox" class="{{ 'k'.$loop->iteration }} check" name="{{ 'k'.$loop->iteration }}" id="absen" value="Absen"/>
     </td>
   </tr>                                                                           @endforeach

这是 table,如果您看到列名,这就是为什么我需要这个

的下拉值
{{ $data->{'pertemuan_'.$dropdown_value} == "Hadir" ? "Checked" : '' }}

那么我该怎么做才能从选定的下拉值中动态显示 table 数据,我需要该值才能将其提供给 table 数据,如您所见 $dropdown_value 我希望你能理解我的解释

经过讨论,OP不知道如何使用循环实现拥有数据库结构的复选框,并使用AJAX请求。

所以,我试着回答。

我没有太多时间解释AJAX,但我解释得合乎逻辑,所以OP可以使用AJAX来实现。

这是 pertemuan 下拉菜单:

<select class="form-control form-select" name="nomor_pertemuan" id="nomor_pertemuan">
    <option value="">-</option>
        @foreach(range(1, 10) as $pertemuan)
       <option value={{ $pertemuan }}>Pertemuan {{ $pertemuan }}</option>
        @endforeach
</select>

您可以将其用作查询字符串。您需要使用 jQuery 事件,或者您可以使用 AJAX 代替:

<script>
$(function(){
    $('#nomor_pertemuan').on('change', function () {
        var url = "{{ url()->current() }}?pertemuan=" + $(this).val();

        if (url) {
            window.location = url;
        }

        return false;
    });
});
</script>

当 select 下拉菜单时,它会重定向到相同的 URL,但有一个查询字符串(根据您的选择)。您可以通过检索会议ID(ID pertemuan)进行查询。

然后,您可以 select 来自查询字符串的 pertemuan 列:

@foreach($kehadiran as $data)
<table>
<tr>
    ...
    <td style="text-align: center;" class="align-middle">
         <input type="hidden" name="{{ 'k' . request()->input('pertemuan') }}" value="">
         <input type="checkbox" class="check" name="{{ 'k' . request()->input('pertemuan') }}" value="Hadir" {{ $data->{'pertemuan_'.request()->input('pertemuan')} == "Hadir" ? "Checked" : '' }}/>
    </td>
    ...
</tr>
</table>
@endforeach