1

私のフォームクラスでは、数値フィールドを追加しました:

$builder->add('total_amount', 'number', array('required' => false));

私のフォーム テンプレートで:

{{ form_widget(form.total_amount, {'attr': {'class': 'field number_field'}}) }}

ただし、私のページのソースは次のように表示されます。

<input type="text" id="ResearchDataForm_total_amount" 
    name="ResearchDataForm[total_amount]" class="field number_field" value="0" />

type="number" を期待していましたが、type="text" としてレンダリングされます。なんでそうなの?

4

2 に答える 2

3

symfony フォームには実際には 2 つのオプションがあり、1 つは整数で、もう 1 つは数値です。数値は主に小数点値に使用されます。integer は整数のみを表します。整数を整数に合わせたい場合は、数値を自動的に切り上げるオプションがあります。

このリンクをチェックする前に http://symfony.com/doc/current/reference/forms/types/integer.html

入力タイプ番号は、私が個人的には好まないものです。なぜなら、それは少数のブラウザーによってのみ実装されており、すべてのブラウザーで同じように見えるようにしたいからです。これらのことは、実際には一般ユーザーを混乱させる可能性さえあります.

于 2013-04-12T04:19:33.020 に答える
0

タイプ number のフィールドは次のように表示されます (type="text")。ユーザーが数字以外を入力すると失敗するため、心配しないでください。

This value is not valid. 

http://symfony.com/doc/current/book/forms.html#text-fields

http://symfony.com/doc/current/reference/forms/types/number.html

于 2013-04-12T03:10:53.303 に答える