1

このような要素のリストがあります

<li class="depuy">
    <a class="comp" data-color="#66" href="#">
        Something
    </a>
</li>

バックボーン レンダリングで、データ属性から取得したこれらの要素に背景色を追加したいと考えています。私はこれをやろうとしました

var som_array = $(".com a");
var som_array_length = som_array.length;
for(var i=0;i<som_array_length;i++)
{
    var som_object = som_array[i].data("color");
    console.log(som_object);
}

しかし、コンソールにこのメッセージUncaught TypeError: Object [object HTMLAnchorElement] has no method 'data' が表示されますが、ご覧のとおりです。何が問題になる可能性がありますか?

4

2 に答える 2

0

jQuery セットで要素をラップする必要があります。それ以外の場合は、jQuery 関数のない dom 要素になります。

var competitors_array = $(".depuy a");
var competitors_array_length = competitors_array.length;
for(var i=0;i<competitors_array_length;i++)
{
    var competitor_object = $(competitors_array[i]).data("color"); // Like this
    console.log(competitor_object);
}
于 2013-08-21T09:02:31.893 に答える