Как разрешить в ветке только буквы в форме symfony2?

Я хочу знать, как настроить текстовое поле в ветке, чтобы разрешить только буквы, например, тип поля, чтобы писать только имена, например. У меня есть что-то вроде этого на мой взгляд:

<div class="control-group">
<label class="control-label">{{form_label(form.name,'Name: ')}}</label>
<div class="controls">
{{form_widget(form.name,{'attr':{'placeholder':'Insert only text','min':'1'}, 'id':'1'})}}
</div>

извините, вот мой код формы symfony php

public function buildForm(FormBuilderInterface $builder, array $options) {
$builder
->add('name')
->add('surname')
->add('address')
->add('idSex')
//->add('birthdate', 'date',array('required'=>true))
->add('birthdate', 'date', [
'widget' => 'single_text',
'format' => 'yyyy-MM-dd',
'attr' => [
'class' => 'form-control input-inline datepicker',
'data-provide' => 'datepicker',
'data-date-format' => 'yyyy-mm-dd'
]
])
->add('observation')
->add('idCmf')
;
}

0

Решение

Вы можете сделать это с помощью HTML 5, используя вход«s pattern приписывать.

Вот пример.

Атрибут pattern использует регулярное выражение, что действительно хорошо для такого рода задач. Тот, где вы хотите получить определенный ответ, но не заботитесь о специфике.

В вашем примере:

<div class="control-group">
<label class="control-label">{{ form_label(form.name, 'Name: ') }}</label>
<div class="controls">
{{ form_widget(form.name, {'attr':{'pattern': '[a-zA-Z]*', ...} }) }}
</div>
</div>

Или в форме типа:

// formType.php
//...

public function buildForm(FormBuilderInterface $builder, array $options) {
$builder
->add('name', 'text', array(
'attr' => ['pattern' => '[a-zA-Z]*']
))
// I'm assuming you'd use it for both.
->add('surname', 'text', array(
'attr' => ['pattern' => '[a-zA-Z]*']
))
//...
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]