0

我有以下内容并且能够发出警报。如何更改所选按钮的类别?

$('body').on("click", "button[name=likebtn]", function (){
    alert($(this).attr("value"));

    $(this).toggleClass('btn btn-mini likebtn');
// OR

    $(this).addClass('btn btn-mini likebtn').removeClass('btn btn-mini btn-primary likebtn');
});

按钮是动态输出的:

$('#div').append("<button class='btn btn-mini btn-primary likebtn' name='likebtn' type='button' value='"+obj.value+"'>"+"LIKE"+"</button>");

我尝试了以下但失败了:

4

3 回答 3

2

也许你应该使用removeClass()之前addClass()

$(this).removeClass('btn-primary').addClass('btn btn-mini likebtn');

因为您添加btn btn-mini likebtn.addClass('btn btn-mini likebtn')然后通过调用删除它们.removeClass('btn btn-mini btn-primary likebtn');

编辑:如果你只想删除btn-primary类:

$('button[name=likebtn]').on("click", function (){
// ...
 $(this).removeClass('btn-primary');
});
于 2013-06-14T09:25:49.697 回答
0

如果向正文添加按钮,则必须再次运行以下代码

$('body').on("click", "button[name=likebtn]", function (){
    alert($(this).attr("value"));

    $(this).toggleClass('btn-primary');

});
于 2013-06-14T09:26:48.917 回答
0

我希望您已经在按钮中添加了“btn-primary”类。你只需要添加类'btn btn-mini likebtn'并删除类'btn-primary'。然后试试下面的。

$(this).addClass('btn btn-mini likebtn').removeClass('btn-primary');
于 2013-06-14T09:34:25.427 回答