Symfony2:如何呈现表单单独提交

时间:2014-08-21 11:04:29

标签: php forms symfony

我在Symfony2中创建一个包含多个提交按钮的表单。我需要控制这些按钮的呈现位置。我尝试了以下内容,但自然没有任何反应。

    <h1>Search Form</h1>
    <div id="search_form">
        {{ form(formSearch) }}
    </div>
    <div id="search_tasks">
        Tasks: 
        {{ form_widget(formSearch.searchButton1) }}
        {{ form_widget(formSearch.searchButton2) }}
    </div>

搜索按钮在表单类中声明;它们在#search_form内呈现,#search_tasks中没有显示任何内容。

2 个答案:

答案 0 :(得分:3)

您已使用{{ form(formSearch) }}呈现整个表单(字段和按钮仅呈现一次)。

您需要分别渲染开始,行和结尾。

{{ form_start(formSearch) }}
    <h1>Search Form</h1>
    <div id="search_form">
        {{ form_row(formSearch.field1) }}
        {{ form_row(formSearch.field2) }}
        {{ form_row(formSearch.field3) }}
    </div>
    <div id="search_tasks">
        Tasks: 
        {{ form_widget(formSearch.searchButton1) }}
        {{ form_widget(formSearch.searchButton2) }}
    </div>
{{ form_end(formSearch) }}

答案 1 :(得分:1)

我遇到了同样的问题,我需要将提交和重置按钮放在同一行。我的表单是动态的,所以我无法单独输出字段。我首先捕获了按钮的HTML,因此interface IEngine { type: string; } 不会为我输出它们。

Engine