1

js コンポーネントを使用できるように、既存の日付フィールド タイプをオーバーライドしたいと考えています。私はこれまでに試しました:

{% block date_widget %}
{% spaceless %}         
    <input type="text" {{ block('attributes') }} readonly="true" value="{{ value }}"/>
    <script>
        mycal = new dhtmlxCalendarObject("{{ id }}");
        mycal.setSkin('yahoolike');
        mycal.setDateFormat('%d.%m.%Y');
        mycal.loadUserLanguage("de");
        mycal.draw();
    </script>          
{% endspaceless %}
{% endblock date_widget %}

これまでのところ機能しません (js コンポーネントが表示されていますが、機能はありません)。私の質問は次valueのとおりvalueです。

別の質問: どうすれば twig/sf2 は結果を認識できるでしょうか? コンポーネントは入力フィールドに日付を文字列として書き込みますが、sf でエラーが発生します

タイプ「配列」、「文字列」の引数が必要です

Symfony 2.0、ベータ 5 を使用しています

4

1 に答える 1

1

成功しました - 私のエラーは、'widget' オプションを単一のテキストとして指定するのを忘れていたことです: 'widget' => 'single_text'.

ここに私の FormBuilder があります:

$builder->add('abgabedatum', 'date', array('label' => 'Abgabedatum', 'widget' => 'single_text'));

fields.html.twig (私の form_theme) のエントリ

{% block date_widget %}
{% spaceless %} 
<input type="text" {{ block('attributes') }} readonly="true" value="{{ value }}"/>
<script>
mycal = new dhtmlxCalendarObject("{{ id }}");
mycal.setSkin('yahoolike');
mycal.setDateFormat('%d.%m.%Y');
mycal.loadUserLanguage("de");
mycal.draw();
</script> 
{% endspaceless %}
{% endblock date_widget %}
于 2011-06-20T17:12:07.320 に答える