0
我遇到了一個問題,當我嘗試render an error message
與repeated password field
關聯。問題是invalid_message
,如果我實現了樹枝如下沒有得到呈現,form_widget不顯示invalid_message錯誤
{{ form_start(form, {'attr': {'class': 'form-horizontal', 'role': 'form', 'novalidate': 'novalidate'}}) }}
<div class="form-group {% if form.password.vars.errors|length > 0 %}has-error{% endif %} {% if form.password.vars.required == 'true' %}required{% endif %}">
{{ form_label(form.password.first, "Password") }}
<div class="col-sm-8">
{{ form_widget(form.password.first) }}
<span class="help-block">{{ form_errors(form.password) }}</span>
</div>
</div>
<div class="form-group {% if form.password.vars.errors|length > 0 %}has-error{% endif %} {% if form.password.vars.required == 'true' %}required{% endif %}">
{{ form_label(form.password.second, "Confirm password") }}
<div class="col-sm-8">
{{ form_row(form.password.second) }}
</div>
</div>
........
不過,如果我使用form_row
,
{{ form_start(form, {'attr': {'class': 'form-horizontal', 'role': 'form', 'novalidate': 'novalidate'}}) }}
<div class="form-group {% if form.password.vars.errors|length > 0 %}has-error{% endif %} {% if form.password.vars.required == 'true' %}required{% endif %}">
{{ form_label(form.password.first, "Password") }}
<div class="col-sm-8">
{{ form_row(form.password.first) }}
<span class="help-block">{{ form_errors(form.password) }}</span>
</div>
</div>
<div class="form-group {% if form.password.vars.errors|length > 0 %}has-error{% endif %} {% if form.password.vars.required == 'true' %}required{% endif %}">
{{ form_label(form.password.second, "Confirm password") }}
<div class="col-sm-8">
{{ form_row(form.password.second) }}
</div>
</div>
........
誤差會顯示在密碼文本框的頂部(這不是我放置錯誤的區域,因爲span
實際上位於文本框的下方),也沒有突出顯示文本框。我盡力解決這個問題,但沒有運氣。如果您的專家能夠提供任何專家指導來解決此問題,我將非常感激。 :)
FYI:表單控件
$builder->add('password', 'repeated', array('type' => 'password',
'required' => true,
'invalid_message' => ErrorMessages::PASSWORDS_DONOT_MATCH,
'options' => array('attr' => array('class' => 'password-field form-control')),
'first_options' => array('label' => false,
'label_attr'=>array('class'=>'col-sm-3 control-label')),
'second_options' => array('label' => false,
'label_attr'=>array('class'=>'col-sm-3 control-label'))));