バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

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

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
h_tanaka
投稿日時: 2017/5/17 17:06
対応状況: −−−
登録日: 2016/7/22
居住地: 愛媛県
投稿: 1634
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 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

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

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


----------------
EC-CUBE 《プラチナ》ランクパートナー
トエビス株式会社 田中 宏典
EC-CUBEの機能やデザインのカスタマイズ承ります。

nyorai
投稿日時: 2017/5/17 18:10
対応状況: −−−
仙人
登録日: 2015/8/21
居住地:
投稿: 302
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
居住地: 愛媛県
投稿: 1634
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の機能やデザインのカスタマイズ承ります。

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


 



ログイン


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

統計情報

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

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2311
5
umebius
2085
6
yuh
1819
7
h_tanaka
1634
8
red
1569
9
mcontact
1262
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
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.