0

ループ内の各ノードのデータ属性の値を取得する必要があります。以下の例では、属性「data-langlabels」に複数の値が含まれているかどうかを確認する必要がありますが、アクセスできない可能性があります。私の問題が何であるか分かりますか?

HTMLコードは次のとおりです。

<a class="dropdown-toggle" href="#" data-link="aaa.pdf" data-toggle="dropdown" data-langlabels="English">Link 1</a><br />
<a class="dropdown-toggle" href="#" data-link="bbb.pdf" data-toggle="dropdown" data-langlabels="English,Spanish">Link 2</a><br />
<a class="dropdown-toggle" href="#" data-link="ccc.pdf" data-toggle="dropdown" data-langlabels="English,Spanish,German">Link 3</a><br />

Javascript 部分:

<script type="text/javascript">
    var findTarget = $('a').data('toggle');
    if (findTarget === 'dropdown') {
        $('a.dropdown-toggle').each(function() {
            var ieLanguages = $(this).data('langlabels');
            alert('ieLanguages: ' + JSON.stringify(ieLanguages, null, 4));

            if (ieLanguages.indexOf(',') > -1) {
                console.log('display more languages!');

                var count = 0;
                $(this).on('click', function(event) {
                    if(count<1) {
                        event.preventDefault();
                    }
                    count++;
                });

            } else {
                console.log('display only one language!');
            }
        });
    }
<script>

上記に基づいた JSFiddle を次に示します

4

0 に答える 0