我有这个:
...
<input type="checkbox" />
AAA
<p>BBB</p>
<div>CCC</div>
...
并希望通过LABEL标记包装输入和下一个文本,如下所示:
...
<label>
<input type="checkbox" />
AAA
</label>
<p>BBB</p>
<div>CCC</div>
...
我怎么能通过jQuery做到这一点?
答案 0 :(得分:0)
$('.parent').contents().filter(function(){
return this.localName === 'input' || this.nodeType === 3;
}).wrapAll('<label></label>');
或者:
$('input[type=checkbox]').each(function(){
$(this).add(this.nextSibling).wrapAll('<label/>');
});