2017-07-27 10 views
3

私は私の削除フォームのボタンにカスタムIDを設定するattrオプションを使用しています:フォーム送信ボタンのIDを上書きする方法は?

{{ form_widget(form.delete, { 'label': 'myCustomLabel', 'attr': {'id': 'myCustomId'} }) }} 

しかし、それは、「ID」属性以外のもの(「クラス」例えば)で動作します。 idがまだ「form_delete」であると私も、フォームビルダでそれを変更することはできません。

$this->createFormBuilder(null, ['csrf_protection' => false]) 
     ->setAction($this->generateUrl('task_delete', array(
      'prefix' => self::getTaskMapper()::getPrefix($task), 
      'id' => $task->getId() 
     )))->add('delete', SubmitType::class, [ 
      'label' => 'delete', 
      'attr' => ['id' => 'MyCustomId'] 
     ]) 
     ->setMethod('DELETE') 
     ->getForm(); 

はなぜそのような場合でしょうか?どのように上書きするのですか?

フォームIDの上書きがうまく機能します。

+0

::ちょうどメインform_widgetオプションにIDを設定するIDは、私は言葉を試してみました数字に – ThisGuyHasTwoThumbs

+0

をすることはできません、それは私が私ができる何の小枝の専門家だ – Audiophile

+0

を変更することはしたくありません」実際に助けますが、IDは完全な数字ではありませんが、それはちょうどhtmlです – ThisGuyHasTwoThumbs

答えて

2

attrを使用しないでください。ノートとして

form_widget(form.delete, { 'label': 'myCustomLabel','id': 'myCustomId' }) }} 
+0

イエス...それは同時に奇妙で愚かです(なぜidが属性でないのか分かりません)。 – Audiophile

関連する問題