如何在树枝中只允许 symfony2 形式的字母?
How to allow only letters in a symfony2 form in twig?
我想知道如何将 twig 中的文本框配置为只允许输入字母,例如将字段类型配置为只输入姓名。我的观点是这样的:
<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')
;
}
您可以通过 input 的 pattern
属性对 HTML 5 执行此操作。
pattern 属性使用regex,这对这类任务来说非常有用。一个你想要某种答案但不关心细节的地方。
在你的例子中:
<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>
或者在表单中Type:
// 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]*']
))
//...
}
我想知道如何将 twig 中的文本框配置为只允许输入字母,例如将字段类型配置为只输入姓名。我的观点是这样的:
<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')
;
}
您可以通过 input 的 pattern
属性对 HTML 5 执行此操作。
pattern 属性使用regex,这对这类任务来说非常有用。一个你想要某种答案但不关心细节的地方。
在你的例子中:
<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>
或者在表单中Type:
// 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]*']
))
//...
}