我有Symfony表单(FormType)并希望在客户端使用AngularJS和ng-submit
,但Symfony会在表单中添加action
属性,而ng-submit不会阻止表单提交和页面重新加载。
2种可能的解决方案:
action
属性?preventDefault()
(或类似的东西)?答案 0 :(得分:2)
好的,我找到了解决方案。我只是在我的基本表单主题中扩展form_start
块:
{%- block form_start -%}
{% set method = method|upper %}
{%- if method in ["GET", "POST"] -%}
{% set form_method = method %}
{%- else -%}
{% set form_method = "POST" %}
{%- endif -%}
<form name="{{ name }}" method="{{ form_method|lower }}" {% if action|length %}action="{{ action }}"{% endif %}{% for attrname, attrvalue in attr %} {{ attrname }}="{{ attrvalue }}"{% endfor %}{% if multipart %} enctype="multipart/form-data"{% endif %}>
{%- if form_method != method -%}
<input type="hidden" name="_method" value="{{ method }}" />
{%- endif -%}
{%- endblock form_start -%}
新添加的if
:
{% if action|length %}action="{{ action }}"{% endif %}