Laravel 将旧值或值传递给模态
Laravel Pass Old or value to modal
看来模态框不太容易大规模实现,我想找到一种替代方法将值传递给模态框,以便正确显示它。
在 blow 示例中,我从 dataTable 本身填充“名称”字段,这很好用,但是如果我想传递示例怎么办
old('name') ?? $document->name
我怎样才能大规模地完成这个,比如说 10 个以上的字段条目?
按钮
<a href="#"><i class="bx bxs-edit text-primary bx-sm edit" title="Edit Document"></i></a>
脚本
<script type="text/javascript">
$(document).ready( function () {
var table = $('#indextable').DataTable();
//Edit Record
table.on('click', '.edit', function(){
$tr = $(this).closest('tr');
if ($($tr).hasClass('child')){
$tr = $tr.prev('.parent');
}
//Config Table
var data = table.row($tr).data();
$('#name').val(data[1]);
$('#editForm').attr('action', '/virtual/documents/'+data[0]);
$('#editModal').modal('show');
});
$("#editForm").submit(function () {
$(".submit").attr("disabled", true);
return true;
});
});
@if (count($errors) > 0)
$('#editModal').modal('show');
@endif
</script>
这是有意义的解决方案。
步骤 1) 在按钮中添加一个数据-###,它必须在指定标题之前。
<a href="#"><i class="bx bxs-edit text-primary bx-sm edit" data-name="{{old('name') ?? $document->name}} " title="Edit Document"></i></a>
Step 2) 在脚本中,你可以用例子“$(this).data('name');”
抓取数据
<script type="text/javascript">
$(document).ready( function () {
//Getting the datatable ready
var table = $('#indextable').DataTable();
//if the edit button is clicked
table.on('click', '.edit', function(){
var nameData = $(this).data('name');
$("#name").val(nameData);
$('#editModal').modal('show');
});
});
//On error keep the modal open
@if (count($errors) > 0)
$('#editModal').modal('show');
@endif
</script>
另一种选择是刷新会话,例如;
//On error keep the modal open
@if (count($errors) > 0)
{{ Session::reflash()}}
$('#editModal').modal('show');
@endif
然后您可以在模态视图中使用标准 old('value')
语法。
看来模态框不太容易大规模实现,我想找到一种替代方法将值传递给模态框,以便正确显示它。
在 blow 示例中,我从 dataTable 本身填充“名称”字段,这很好用,但是如果我想传递示例怎么办
old('name') ?? $document->name
我怎样才能大规模地完成这个,比如说 10 个以上的字段条目?
按钮
<a href="#"><i class="bx bxs-edit text-primary bx-sm edit" title="Edit Document"></i></a>
脚本
<script type="text/javascript">
$(document).ready( function () {
var table = $('#indextable').DataTable();
//Edit Record
table.on('click', '.edit', function(){
$tr = $(this).closest('tr');
if ($($tr).hasClass('child')){
$tr = $tr.prev('.parent');
}
//Config Table
var data = table.row($tr).data();
$('#name').val(data[1]);
$('#editForm').attr('action', '/virtual/documents/'+data[0]);
$('#editModal').modal('show');
});
$("#editForm").submit(function () {
$(".submit").attr("disabled", true);
return true;
});
});
@if (count($errors) > 0)
$('#editModal').modal('show');
@endif
</script>
这是有意义的解决方案。
步骤 1) 在按钮中添加一个数据-###,它必须在指定标题之前。
<a href="#"><i class="bx bxs-edit text-primary bx-sm edit" data-name="{{old('name') ?? $document->name}} " title="Edit Document"></i></a>
Step 2) 在脚本中,你可以用例子“$(this).data('name');”
抓取数据<script type="text/javascript">
$(document).ready( function () {
//Getting the datatable ready
var table = $('#indextable').DataTable();
//if the edit button is clicked
table.on('click', '.edit', function(){
var nameData = $(this).data('name');
$("#name").val(nameData);
$('#editModal').modal('show');
});
});
//On error keep the modal open
@if (count($errors) > 0)
$('#editModal').modal('show');
@endif
</script>
另一种选择是刷新会话,例如;
//On error keep the modal open
@if (count($errors) > 0)
{{ Session::reflash()}}
$('#editModal').modal('show');
@endif
然后您可以在模态视图中使用标准 old('value')
语法。