0

私は3つのシンプルなボタンを持っています。

<div class="enter-btn">Enter</div>

<div class="all-btn">All</div>


<div class="category-all">
    <div class="back-btn" data-action="">Back</div>
</div>

Enterまたはをクリックすると、ボタンに値がAll追加されます。data-actionBack

$(".enter-btn").bind("click", function() {
    $(".back-btn").attr("data-action", "search-home");
});

$(".all-btn").bind("click", function() {
    $(".back-btn").attr("data-action", "category-home");
});

$(".back-btn").bind("click", function() {
   alert($(this).data("action")); 
});

ただし、Enter最初にクリックAllすると、Backボタンの値は最初の値を保持しているように見え、新しい値は取得されません。

私の問題を示すために、単純な jsfiddle を追加しました。

http://jsfiddle.net/uCyJx/1/

4

1 に答える 1

6

データ属性を変更するには、データ関数http://api.jquery.com/jQuery.data/を使用します。

$(".back-btn").data("action", "search-home");
于 2013-04-15T16:48:23.660 に答える