我有以下问题。如果我尝试使用此代码
$form = $this->createFormBuilder()
->add('code', 'integer', array(
'attr' => array('class' => 'login-input')
))
->add('einlösen', 'submit', array(
'attr' => array('class' => 'login-submit')
))
->getForm();
我的浏览器在 Einlösen 中没有显示 Ö。如果我删除类属性,它可以工作。我认为这可能是一个 css 问题,但问题似乎出在 symfony 上,因为那里无论我使用什么类,ö 总是被破坏。
我意识到的另一件事是,如果我执行缓存清除,ö 就在那里,但只要我按下按钮一次并重新加载页面,它就不会再次正确显示。
尝试使用标签选项:
$this->createFormBuilder()
->add('submit', 'submit', array(
'label' => 'einlösen',
'attr' => array('class' => 'login-submit')
))
作为替代方案,您可以在树枝中设置/覆盖标签:
{{ form_widget(form.submit, { 'label': 'einlösen' }) }}