如何从表中获取当前行id,因为我需要编辑/删除此行。我创建了隐藏字段,然后使用$ id = $ request-> record_id;但它不起作用。有人可以帮忙解释一下如何做到这一点。
刀片模板:
<form class="form-horizontal" role="form" method="POST"
action="{{ route('fuel_accounting_action', $category->slug) }}">
{{ csrf_field() }}
<input type="hidden" name="table_id" value="{{ $table->id }}">
<table id="table-{{ $table->id }}" class="table table-bordered second_table">
<thead>
<tr>
<th width="45%">Pavadinimas</th>
<th width="15%"
style="border-left: 2px solid #A6384A; border-top: 2px solid #A6384A;">ISPILTA
L.
</th>
<th width="15%" style="border-top: 2px solid #A6384A;">ISPILTA KG.</th>
<th width="15%"
style="border-top: 2px solid #A6384A; border-right: 2px solid #A6384A;">VERTE
EUR.
</th>
<th width="10%"></th>
</tr>
</thead>
<tbody>
@foreach($table->fuelAccountingRecords as $record)
<tr>
<td id="name" contenteditable="true">{{ $record->name }}</td>
<td id="liters" contenteditable="true"
style="border-left: 2px solid #A6384A;">{{ $record->liters }}</td>
<td id="show_kilograms">{{ $kilograms = number_format($table->density * $record->liters, 2, '.', '') }}</td>
<td id="show_price"
style="border-right: 2px solid #A6384A;">{{ number_format($table->price * $kilograms, 2, '.', '') }}</td>
<td id="action">
<input type="hidden" name="record_id"
value="{{ $record->id }}">
<button id="editRecord" type="submit" class="btn btn-success btn-sm"
name="editRecord"><i class="fa fa-pencil" aria-hidden="true"></i>
</button>
<button id="deleteRecord" type="submit"
onclick="return confirm('Ar tikrai norite ištrinti')"
class="btn btn-danger btn-sm"
name="deleteRecord"><i class="fa fa-trash" aria-hidden="true"></i>
</button>
</td>
</tr>
<?php
$used_kilograms = $used_kilograms + ($table->density * $record->liters);
$used_liters = $used_liters + $record->liters;
$used_money = $used_money + ($table->price * $kilograms);
?>
@endforeach
</tbody>
</table>
<div align="left">
<button id="addRow" type="button" class="btn btn-lg"
data-table-id="{{ $table->id }}"><i class="fa fa-plus" aria-hidden="true"></i>
</button>
</div>
</form>
控制器行:
$test = $request->record_id;
dd($test);
答案 0 :(得分:0)
您可以像<tr>
这样<tr id="your id">
提供ID {/ 1}}。
但我建议你在JS中创建一个删除行的函数。 你可以像这样使用它
$(document).on('click','.remove',function(){
var button = $(this).closest("tr");
button.remove();
});
答案 1 :(得分:0)
你可以使用如下的jquery函数。
$(document).on('click','#deleteRecord',function()
{
var id= $(this).closest('tr').find('td').find('input').val();
$.ajax(
{
type: 'DELETE',
dataType: 'json',
url: '/your route name/' + id,
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
success: function(data)
{
if(data.title=='success')
$(this).closest('tr').remove();
}
});
});
or you can try this as well
var id=$(this).closest('tr').find('[name="record_id"]').val();
我希望它应该有用。为编辑做同样的事情
您可以使用ajax来调用控制器功能,如下所示: -
在控制器功能
中 public function delete_row(modelname $modelname)
{
$status=$modelname->delete();
if($status==1)
{
echo json_encode(array('title'=>'success'));
}
}