0

jquery の属性 onclick を一度に 1 つずつ増やしようとしています。

.new-rccこのボタンがあり、それがページ上にあるとしましょう:

<a class="new-rcc" data-attr="1" href="#"><span>Button &raquo;</span></a>

ボタンがクリックされるたびに、 を 1 ずつ増やす必要があるためdata-attr、1 から 2、3 から 4 のように増加します。

私はこのようなことをしてみました:

var showthese = $('.new-rcc').prop('data-attr');
$('.new-rcc').click(function(){
    var showtotal = showthese++;
    $(this).prop('data-attr', showtotal);
    return false;
});

しかし、それは働きたくないようですか?

4

2 に答える 2

3

データ属性はプロパティではないため、attr()and notを使用する必要がありprop()ます。

var showthese = $('.new-rcc').data('attr');
$('.new-rcc').click(function(){
    showthese++;
    $(this).attr('data-attr', showthese);
    return false;
});

フィドル

data()を使用して値を取得できますが、値を設定してdata()も属性は実際には更新されず、jQuery によって内部的に保存されるだけであることに注意してください。

于 2013-06-11T21:17:04.083 に答える
2

式の値showthese++はの元の値ですshowthese

++showthese結果の値に評価されるプリインクリメント演算子 ( ) が必要です。

于 2013-06-11T21:13:18.457 に答える