3

私の formType では、次を使用して日付フィールド タイプをレンダリングします。

$builder->add('date_naissance', 'date', array(
            'input'  => 'datetime',
            'widget' => 'single_text',
        ));

ここで、レンダリング方法を以下に示します。私の問題は、jquery ピッカーを使用したいということです。入力には、日付を選択するための醜いウィジェットがデフォルトで既に含まれているようです。私の質問は簡単です。そのデフォルトの日付ピッカーのリードを取得するにはどうすればよいですか。返信ありがとうございます。乾杯。マルク

ここに画像の説明を入力

4

5 に答える 5

13

編集、symfony 2.6以降

次のような html5 フィールド オプションを使用できるようになりました。

->add('date', DateType::class, ['html5' => false]);

type="date"これにより、フォーム ビューの html5 が削除されます。


HTML5 の日付ピッカーです。htmlには

type="date"

これはデフォルトで symfony によって出力されます。

Chrome はこれを見て、日付ピッカーを実行します。

問題を解決するためのいくつかのアイデア:

  1. フォーム ビルダーでフォーマットを変更します。

    $builder->add('date_created', DateType::class, array( 'widget' => 'single_text'));

    詳細はこちら: http://symfony.com/doc/current/reference/forms/types/date.html#format

  2. ブラウザーの日付ピッカーを削除します: https://stackoverflow.com/a/11470344/744975

  3. ブラウザーの日付ピッカーを別の JavaScript ライブラリの日付ピッカーでオーバーライドします: https://jqueryui.com/datepicker/ (私の好みのオプション)

于 2013-01-16T15:47:44.413 に答える
9

HTML5タイプを無効にするために2.6設定できるsymfonyから始めます。'html5' => false

例:

$builder->add('establishment_date', 'date', array(
        'label'   => 'Establishment date',
        'widget'  => 'single_text',
        'html5'   => false,
));
于 2015-03-23T03:12:35.077 に答える
5

デフォルトのタイプを小枝内のテキストに変更するだけです:

{{form_widget(dateField, {'type':'text'})}}
于 2013-02-21T17:37:16.823 に答える
4

これは Symfony に由来する問題ではありません。日付フィールドを生成するときに、そのような日付ピッカーはありません。さまざまなブラウザでページを確認するか、このフィールドを生成する、実装した可能性のあるバンドルを確認してください。

于 2013-01-16T15:10:08.167 に答える