【发布时间】:2022-07-05 22:31:30
【问题描述】:
我有一张在我的 laravel 系统中显示的表格。我希望能够在单击表头时自动对表中的字段进行排序。
如何将表格标题变成一种超链接,当单击它时,它会从控制器运行查询? 这是页面的当前控制器:
public function index()
{
$user = Auth::user();
$userId = Auth::id();
$username = DB::table('users')
->select('staffName')
->where('id', $userId)
->pluck('staffName')
->first();
$documents = Document::all();
$managers = DB::table('documents')
->join('users', 'users.id', '=', 'documents.staff_id')
->select('documents.staffName','certName','trainingName','uploadCert')
->where('documents.staffName', $username)
->orWhere('reportingTo', $username)
->get();
$employees = DB::table('documents')
->where('staffName', $username)
->get();
return view('admin.leave.list', compact('documents', 'managers', 'employees', 'user'));
// return $this->autoIndex(Document::class);
}
这是刀片:
<div class="container-fluid">
<div class="row">
<div class="col-12">
<div class="card">
<div class="card-body">
<h5 class="card-title">Certificate List</h5>
<div class="table-responsive">
<table id="zero_config" class="table table-striped table-bordered">
<thead>
<tr>
<th>No</th>
<th>Name</th>
<th>Training Name</th>
<th>Certificate Name</th>
<th>Certificate</th>
</tr>
</thead>
<tbody>
@can('isAdmin')
@foreach($documents as $document)
<tr>
<td>{{$loop -> index+1 }}</td>
<td>{{$document -> staffName}}</td>
<td>{{$document -> trainingName}}</td>
<td>{{$document -> certName}}</td>
<td><a href="storage/{{$document -> uploadCert}}" target="_blank">View Certificate</a></td>
</tr>
@endforeach
@endcan
@if($user -> role == 'manager')
@foreach($managers as $manager)
<tr>
<td>{{$loop -> index+1 }}</td>
<td>{{$manager -> staffName}}</td>
<td>{{$manager -> trainingName}}</td>
<td>{{$manager -> certName}}</td>
<td><a href="storage/{{$manager -> uploadCert}}" target="_blank">View Certificate</a></td>
</tr>
@endforeach
@endif
@can('isEmployee')
@foreach($employees as $employee)
<tr>
<td>{{$loop -> index+1 }}</td>
<td>{{$employee -> staffName}}</td>
<td>{{$employee -> trainingName}}</td>
<td>{{$employee -> certName}}</td>
<td><a href="storage/{{$employee -> uploadCert}}" target="_blank">View Certificate</a></td>
</tr>
@endforeach
@endcan
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
我可以对代码进行哪些操作或更改以使用表头进行排序功能?我能得到一些帮助吗?
【问题讨论】: