2

私のアプリには、3 つの選択フィールド / ドロップダウン リストを持つフォームが含まれています。

1 つ目は、エンティティの「リレーショナル」フィールドにリンクされており、正常に機能します。ユーザーは最初にテーブル リンクを選択する必要があります。

2 番目と 3 番目は両方とも、同じエンティティ内の文字列フィールドにリンクされています。jQuery を介して、ユーザーが最初のドロップダウン リストで行った決定に基づいて、これらの選択肢フィールドに値が入力されます。

フォームを送信した後、2 番目と 3 番目のフィールドにエラーが発生しました。無効な入力が含まれています。フォーム オブジェクトを確認すると、値がバインドされていませんでした。それらの値は到達しませんでした。

ユーザーから文字列データを収集するための選択フィールドは次のようになります。

->add('sourceName', 'choice', array
    (
        'label' => 'Choose source name:',
        'empty_value' => 'Please choose a table link first...',
        'choices' => array(),
        'attr' => array('class' => 'extFieldChoice'),
    )

jQuery がジョブを完了すると、html select 要素は次のようになります。

<select id="someId" name="someName[sourceName]" required="required" 
  class="extFieldChoice">
  <option value="first">first</option>
  <option value="second">second</option>
  <option value="manymore">Many more...</option>
</select>

エラーは、最初は空のchoices配列にあると思われます。ただし、選択肢は数百に及ぶため、考えられるすべての選択肢で満たすことは不可能です。

4

1 に答える 1