2

AJAX GET メソッドを使用して、mysql データベースからいくつかの名前をボタンの形で返しています。これは正常に行われ、これらのボタンの 1 つをクリックすると、動作している JavaScript 関数を呼び出すようになりました。ボタンをクリックすると、その特定のボタンにクラスを追加したいと思います。私は次のようにそれをやっています -

$('.btn').click(function() {        
    $(this).addClass('btn-warning');
});

しかし、それはクラスを追加していません。また、これはAJAX呼び出しでエコーしているコードです-

echo "<button type='button' id=".$row['email']." class='btn names btn-link' onclick='personchange(\"".$row['email']."\",\"".$row['first_name']."\")'>".$row['first_name']."</button>";

どんな助けでも大歓迎です

4

1 に答える 1

3

ページの最初のレンダリング後に要素を作成する場合は、次の.on()ようなメソッドを使用する必要があります。

$('body').on('click', '.btn', function(){
  $(this).addClass('btn-warning')
});

where'body'は、作成された要素を含む任意の要素のセレクターにすることができます。

http://api.jquery.com/delegate/を参照してください

于 2013-08-03T14:52:21.957 に答える