通过在Symfony 4中切换Bootstrap模式来进行行编辑

时间:2018-06-27 09:25:16

标签: javascript php ajax symfony bootstrap-modal

我目前正在与 Symfony 4 Bootstrap 3 一起开发项目。

在一个特定的页面上,我正在为持久保存在数据库中的每个 Contact 实体生成一个包含一行的数组。该实体之一的创建由BootStrap模态中的 Symfony生成的表单处理。 我想通过单击单击行来编辑行(即对象),这将切换模式并用与此联系人相关的数据填充输入,并让我修改我想要的任何内容

我知道我将不得不使用Ajax来执行此操作,但是我对如何实现它有些迷失,因为我有点菜鸟:o

我真的很感谢这样做的任何提示!谢谢:)

1 个答案:

答案 0 :(得分:0)

使用Jquery和“ friendsofsymfony / jsrouting-bundle”,您可以将编辑页面加载到该特定ID的弹出窗口中。

$('#your-popup').load(Routing.generate('contact_edit_page_route', { id : id }));

如果您还没有此路线联系人的编辑页面,请首先创建它。 不要忘记将options = {“ expose” = true}添加到路由,以便Jquery可以找到它:

/*
 * @Route("/contact/edit/{id}", name="contact_edit_page_route", options={"expose"=true})
 * @Method({"GET", "POST"})
 */

如果html看起来像这样:

{% for contact in contacts %}
    <a data-id="{{ contact.id }}" class="load-popup">Edit</a><br/>
{% endfor %}

然后,您可以在javascript中执行以下操作:

$('.load-popup').on('click', function(){
    var thisId = $(this).attr('data-id');
    $('#your-popup').load(Routing.generate('contact_edit_page_route', { id : thisId }));
});