在Laravel中编辑bootstrap模式中的记录

时间:2017-04-20 07:23:36

标签: forms twitter-bootstrap laravel modal-dialog

我有一个命名路由admin.resources.index,它通过resources以列表的形式列出foreach表中的所有记录。列表中的每条记录都有Edit Resource按钮。

// admin/resources/index.blade.php  

@foreach ($resources as $resource)
      <button class="btn bg-blue waves-effect res-edit-profile-btn" href="{{ route( 'admin.resources.index', $resource ) }}" data-toggle="modal" data-target="#editModal">Edit Resource</button>
@endforeach

在同一页面上有一个editModal(admin / resources / index.blade.php),我想用resource个对象填充值。

问题

问题是editModal打开了admin/resources/index.blade.php的所有内容,而不仅仅是editModal内容。

laravel_modal_question_stack_img

html出现问题时,会出现这类问题。缺少关闭元素标记。但我已经验证了标记。

1 个答案:

答案 0 :(得分:0)

解决方法是使用data-属性。我们可以在我们的按钮上动态生成data-target属性,如

<button class="btn bg-blue waves-effect res-edit-profile-btn" data-toggle="modal" data-target="#editModal-{{ $resource['resource_id'] }}">Edit Resource </button>

还使用foreach生成模态。这就像每个生成的按钮链接都有自己的模态。

@foreach ($resources as $resource)

<div class="modal fade" id="editModal-{{ $resource['resource_id'] }}" tabindex="-1" role="dialog">

 // Other modal html here

</div>
@endforeach

重要

此解决方案使用foreach生成大量标记,即每个记录都有完整的模态标记。这可能会影响页面性能。如果你有更好的东西。请在此处更新以供将来参考。