質問 > フロント機能 > 入力フォームのclass等追加について |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
earth012 |
投稿日時: 2016/10/7 2:19
対応状況: −−−
|
半人前 登録日: 2016/10/4 居住地: 投稿: 28 |
入力フォームのclass等追加について eccube3にて
入力フォーム系でclassやinput_type等を追記や変更をする場合 どの部分をすればよいのでしょうか? テンプレートで {{ form_widget(●●●) }}から呼び出ししてると思いますが、、 ご教授お願いします。 |
umebius |
投稿日時: 2016/10/7 8:19
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: 入力フォームのclass等追加について /src/Eccube/Form/Type 配下にある
AbstractTypeを継承しているクラスになります。 例えば問い合わせフォームなら /src/Eccube/Form/Type/Front/ContactType.php です。 $builder->addの第2引数がinput_typeに近いもので、 classはこんな感じで付けられますよ。 $builder->add('login_id', 'text', array( 'attr' => array( 'class' => 'hoge', ),
|
earth012 |
投稿日時: 2016/10/8 8:14
対応状況: −−−
|
半人前 登録日: 2016/10/4 居住地: 投稿: 28 |
Re: 入力フォームのclass等追加について 入力フォームについて、
ContactType.phpの45行目付近に追加したのですが、 以下のように書いても反映されないのですが、、classを指定する場合はどこまちがってますでしょうか? $builder ->add('name', 'name', array( 'required' => true, 'attr' => array( 'class' => 'hoge', //追加 ), )) ->add('kana', 'kana', array( 'required' => true, |
umebius |
投稿日時: 2016/10/8 12:03
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: 入力フォームのclass等追加について FormType"name"は
子要素を複数持つ集合体ですのでそのままでは反映されません Twigで子要素に直接当てるのが簡単です {{ form_widget(form.name.name01, {attr : {class : 'hoge'}}) }} https://umebius.com/eccube/%E5%95%8F%E3%81%84%E5%90%88%E3%82%8F%E3%81%9B%E3%83%95%E3%82%A9%E3%83%BC%E3%83%A0%E7%AD%89%E3%81%A7input%E3%80%81select%E3%81%ABclass%E3%82%92%E8%A8%AD%E5%AE%9A%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/
|
earth012 |
投稿日時: 2016/10/9 8:10
対応状況: −−−
|
半人前 登録日: 2016/10/4 居住地: 投稿: 28 |
Re: 入力フォームのclass等追加について アドバイスありがとうございます。
大変勉強になりました。 ご教授どおりに直接Twigに書くと反映されましたが、 反映されない子要素があるのですが、なぜでしょうか。 郵便番号やアドレスには反映されません。。。 {{ form_widget(form.address, {attr : {class : 'hoge'}}) }} ※参考アドレスありがとうございます。 参考アドレスには attrの前のカンマがもれてると思うのですが。 ( ,{attr ) |
umebius |
投稿日時: 2016/10/9 12:33
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: 入力フォームのclass等追加について カンマのご指摘ありがとうございます!助かります。
なぜzipやaddressで反映されないかですが、 理由はそれらがさらに親要素になっているからです。 form.zipはZipType.phpというFormTypeでさらに細かく定義されています。 form.zip.zip01 form.zip.zip02 という子フィールドです。 {{ form_widget(form.zip.zip01, {attr : {class : 'hoge'}}) }} {{ form_widget(form.zip.zip02, {attr : {class : 'hoge'}}) }}
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |