我有一个带有重复字段的表单:
$builder->add('password', 'repeated', array( 'type' => 'password' ));
我希望这个重复的字段与其他字段的呈现方式不同 - 我该怎么做?我是Symfony和twig的新手,所以如果您对代码有建议,请添加一些有关代码放置位置的信息。
我的form.html.twig看起来像这样:
{{ form_widget(form) }}
提前致谢。
答案 0 :(得分:5)
这是我使用twitter bootstrap显示重复字段的方式,当然你可以将这些类改为你正在使用的类
<form action="{{ path('passwordReset') }}" method="post" role="form">
{{ form_errors(form) }}
<div class="login-screen">
<h4>Reset Your Password</h4>
<div class="login-form">
<div class="form-group">
{{ form_widget(form.password.first, { 'attr': {'class': 'form-control', 'placeholder': 'Enter your password', 'value':''} }) }}
{% if(form_errors(form.password.first)) %}
<div class="alert alert-danger">{{ form_errors(form.password.first) }}</div>
{% endif %}
<label class="login-field-icon fui-lock" for="login-password"></label>
</div>
<div class="form-group">
{{ form_widget(form.password.second, { 'attr': {'class': 'form-control', 'placeholder': 'Confirm your password', 'value':''} }) }}
{% if(form_errors(form.password.second)) %}
<div class="alert alert-danger">{{ form_errors(form.password.second) }}</div>
{% endif %}
<label class="login-field-icon fui-lock" for="login-name"></label>
</div>
<button class="btn btn-primary btn-lg btn-block" type="submit">Submit</button>
<a class="login-link" href="{{ path('login') }}">Sign in</a>
</div>
</div>
{{ form_rest(form) }}
</form>
您需要的是以下两个
{{ form_widget(form.password.first, { 'attr': {'class': 'form-control', 'placeholder': 'Enter your password', 'value':''} }) }}
{{ form_widget(form.password.second, { 'attr': {'class': 'form-control', 'placeholder': 'Confirm your password', 'value':''} }) }}
只需为它们指定要分配它们的类,使它们看起来不同。
答案 1 :(得分:1)
西洛
'first_options' => array('label' => 'form.password','attr' => array('class' => 'mystyle'))
formType中的类似内容,它为您的input元素添加一个类,让您自定义。