バージョン選択

フォーラム

メニュー

オンライン状況

51 人のユーザが現在オンラインです。 (39 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 51
もっと...

サイト内検索

質問 > フロント機能 > 入力フォームの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',
),


----------------
EC-CUBEカスタマイズ・高速化・脆弱性対策・SEO ご相談ください。

2系・3系から4系へのバージョンアップ実績豊富

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/


----------------
EC-CUBEカスタマイズ・高速化・脆弱性対策・SEO ご相談ください。

2系・3系から4系へのバージョンアップ実績豊富

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'}}) }}


----------------
EC-CUBEカスタマイズ・高速化・脆弱性対策・SEO ご相談ください。

2系・3系から4系へのバージョンアップ実績豊富

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,284名です
総投稿数は109,688件です

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1567
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.