0

データを .data メソッドに配列として保存し、それらを 3 より大きいスパンで出力する必要があります。

私はコードを書いていますが、'object object' DEMOを提供しています

<script type="text/javascript">
    $(function(){
        $('a').click(function(){
            var value = $('div').data('key',[]);
            var txt= $(this).text();
            $('div').data('key').push(txt)
            $('span').text(value)
        });
    });
</script>

//html

<div></div>
<a href="#">1</a>
<a href="#">2</a>
<a href="#">3</a>
<a href="#">4</a>
<a href="#">5</a>
<a href="#">6</a>
<a href="#">7</a>
<a href="#">8</a>
<span></span>
4

2 に答える 2

3
$('div').data('key', []); // init the array

$('a').click(function () {
    var value = $('div').data('key'); //pulls the current array value.
    var txt = $(this).text();
    value.push(txt); 
    $('span').text(value);
});

固定デモ

于 2013-03-22T08:44:49.793 に答える
-1

問題はこの行です。

var value=  $('div').data('key',[]);

の戻り値をvalueに割り当て.data()ます。これは、他のほとんどのjQuery関数と同様に、jQueryオブジェクト自体を返します。後でそのオブジェクトをスパンのテキストとして使用します。それがエラーの原因です。これを修正するには、最初にクリックの外側でデータ属性を一度初期化し、 var valuegdoronが行う方法の内側で個別に設定します。

于 2013-03-22T08:53:06.443 に答える