var s = '<button class="add_friend_action btn success">abc</button>';
如何为此添加“迷你”类?
$(s).addClass('mini')
不起作用......当我console.log(s)
时,它会恢复正常。
答案 0 :(得分:3)
我向你保证,$(s).addClass('mini')
工作正常。试试这个:
var s = '<button class="add_friend_action btn success">abc</button>';
var $temp = $(s).addClass('mini');
console.log($temp);
答案 1 :(得分:1)
$(s).addClass('mini')不起作用...当我在console.log(s)时,它恢复正常
那是因为字符串是不可变的,你需要将$(s)的html输出到一个新字符串以获得添加的类。
$('<div>').append($(s).addClass('mini')).html();
答案 2 :(得分:1)
jQuery在这个意义上用于在元素已经是DOM的一部分之后进行操作,并且因为's'在这一点上只是一个字符串,所以jQuery不会将它视为可以拥有类的东西。
所以有几种不同的方法可以实现这一点,最简单的方法是给你串起一个属性,你可以用来定位它(或者只是使用那里的那个)并在你的doc准备就绪(或者在创建此元素后,如果它不在初始DOM完成时),例如:
$('elementTargetName').addClass('mini');
希望这有帮助!
答案 3 :(得分:1)
如果您想更改字符串本身,这将是一种方式:http://jsfiddle.net/AHH5G/1/。
var s = '<button class="add_friend_action btn success">abc</button>';
s = $(s).addClass("mini").wrap("<div>").parent().html();
基本上,你解析它,添加一个类,然后通过包装它并在包装元素上调用.html()
来获取“外部”HTML。
答案 4 :(得分:0)
试试这个:
var bt = $("<button/>").addClass("add_friend_action btn success mini").text("abc");