バージョン選択

フォーラム

メニュー

オンライン状況

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

PR

デザインテンプレート EC-CUBE3.0版が登場!
広告掲載について

サイト内検索

質問 > フロント機能 > optionタグに属性を追加したい

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
h_tanaka
投稿日時: 2017/5/17 17:06
対応状況: −−−
長老
登録日: 2016/7/22
居住地: 愛媛県
投稿: 290
optionタグに属性を追加したい
EC-CUBE 3.0.14
商品規格のプルダウンに画像をつけたいと思っています。

wSelectというjQueryプラグインを用いて実現可能だということはわかったのですが、optionタグにdata-icon属性を指定する必要があります。
http://wselect.websanova.com/

src/Eccube/Resource/template/default/Product/detail.twig

                            {# 規格1 #}
                            サイズ
                            <select>
                                <option data-icon="img/icon_s.jpg">S</option>
                                <option data-icon="img/icon_m.jpg">M</option>
                                <option data-icon="img/icon_l.jpg">L</option>
                            {% endfor %}
                            </select>


Symfony2のレンダリング機能でoptionタグにdata-icon属性を指定するにはどうすればよいでしょうか?

src/Eccube/Form/Type/AddCartType.php

                    $builder->add('classcategory_id1', 'choice', array(
                        'label' => $Product->getClassName1(),
                        'choices'   => array('__unselected' => '選択してください') + $Product->getClassCategories1(),
                    ));


src/Eccube/Resource/template/default/Product/detail.twig

                            {# 規格1 #}
                            サイズ
                            {{ form_widget(form.classcategory_id1) }}
                            {{ form_errors(form.classcategory_id1) }}



----------------
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

h_tanaka
投稿日時: 2017/5/17 17:51
対応状況: 解決済
長老
登録日: 2016/7/22
居住地: 愛媛県
投稿: 290
Re: optionタグに属性を追加したい
自己解決しました。
ページレンダリング後にjQueryで属性を追加しました。

    $('#classcategory_id1 option').each(function() {
        $(this).attr('data-icon', 'img/icon.jpg');
    });


----------------
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

nyorai
投稿日時: 2017/5/17 18:10
対応状況: −−−
一人前
登録日: 2015/8/21
居住地:
投稿: 114
Re: optionタグに属性を追加したい
FormTypeでやるなら、choice_attr使えばできそうですね。
http://symfony.com/doc/2.7/reference/forms/types/choice.html#choice-attr
h_tanaka
投稿日時: 2017/5/17 18:24
対応状況: −−−
長老
登録日: 2016/7/22
居住地: 愛媛県
投稿: 290
Re: optionタグに属性を追加したい
まさに欲しかった情報です!

実行タイミングの不安定なjQueryよりもこちらのほうが確実ですね。
ありがとうございます。


                    $builder->add('classcategory_id1', 'choice', array(
                        'label' => $Product->getClassName1(),
                        'choices'   => array('__unselected' => '選択してください') + $Product->getClassCategories1(),
                        'choice_attr' => function($val, $key, $index) {
                            return ['data-icon' => $this->config['front_urlpath'].'/img/icon_'.$val.'.jpg'];
                        },
                    ));


----------------
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

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

 



ログイン


EC-CUBEペイメント

クレジットカード情報の非保持化対応

統計情報

総メンバー数は19,623名です
総投稿数は82,108件です

投稿数ランキング

1
seasoft
7331
2
AMUAMU
2712
3
nanasess
1632
4
yuh
1366
5
red
1059
6
fukap
907
7
shutta
827
8 ramrun 789
9
tsuji
782
10
umebius
671
11
tao_s
646
12 sumida 638
13
homan
633
14
468
615
15 karin 609
16 DELIGHT 571
17
patapata
502
18
flealog
483
19 tonton 436
20
ecbg
387


ネットショップの壺

EC-CUBEガイドブック
Copyright© LOCKON CO.,LTD. All Rights Reserved.