2016-08-10 3 views
4

私は、ページがレンダリングされるときに入力(type = date)すると予想しています。しかし、私はタイプ=テキストを取得しています。Symfony 2.8 Forms/Twig:Twigが入力(type = date)を間違ってレンダリングしています

  1. 複数のブラウザ(デスクトップとモバイルの両方)私は内部のロードされたすべてのCSS/JS削除

  2. <html> 
        <head></head> 
        <body> 
         <input id="test_form_studentdob" class="normal" type="text" placeholder="DD-MM-YYYY" name="test_form[studentdob]"> 
        </body> 
    </html> 
    

    は、私はすでにこれを試してみました。これはjQueryの/ jQueryのをロード/ UIライブラリ

ブートストラップ私が間違っていることができるものの任意のアイデアが含まれて? symfonyのコントローラのおかげ

スニペット:これは私の小枝テンプレートです

<?php 
// src/appBundle/Form/TestFormType.php 
namespace AppBundle\Form; 

use Symfony\Component\Form\AbstractType 
    , Symfony\Component\Form\FormBuilderInterface 
    , Symfony\Component\OptionsResolver\OptionsResolverInterface; 

class TestFormType extends AbstractType { 
    public function setDefaultOptions(OptionsResolverInterface $resolver) { 
     $resolver->setDefaults(
      array(
       "attr" => array(
         "id" => "testform" 
       ) 
      ) 
     ); 
    } 

    public function buildForm(FormBuilderInterface $builder, array $options) { 
     $builder 
      ->setMethod("GET") 
      ->add(
       "studentdob" 
       , "date" 
       , array(
        "attr" => array(
         "class" => "normal" 
         , "placeholder" => "DD-MM-YYYY" 
        ) 
        , "format" => "dd-MM-yyyy" 
        , "required" => false 
        , "widget" => "single_text" 
       ) 
      ); 
    } 
} 

/** 
* @Route("/test") 
*/ 
public function testAction(Request $request) { 
    $form = $this->createForm(new TestFormType()); 
    $form->handleRequest($request); 

    return $this->render(
     "AppBundle:SelfService:TestForm.html.twig" 
     , array("form" => $form->createView()) 
    ); 
} 

symfonyのフォーム型クラス

{% block body %} 
    {{ form_widget(form.studentdob) }} 
{% endblock %} 
+0

エンティティのフィールドタイプとは何ですか? – Filchev

+0

これを削除してみてください。 "widget" => "single_text" – Filchev

+0

@Filchevオリジナルの投稿を編集しました。しかし、私はそれが1つに関連していないので、私は自分のフォームをどのエンティティにも付けません。 – mrjayviper

答えて

2

年コンポーネントが0より大きい数を表す4桁以上 ある追加の資格と、RFC 3339で定義されるようYYYY-MM-DD

有効フル日付:は、ユニークなフォーマットを有します

他の形式を使用する場合は、テキスト入力を使用する必要があります。

したがって、別のフォーマットを指定する場合、symfonyはパターン属性と結合されたテキスト入力を使用します。

関連する問題