在 jQuery 中选择 HTML 元素对

7

我正在处理一些生成类似下面html的服务器代码:

<input type="radio" />
<label>something</label>

<input type="radio" />
<label>something</label>

<input type="radio" />
<label>something</label>

<input type="radio" />
<label>something</label>

我想在每对元素中使用span来包装,但我无法找到一种方法在jQuery中选择元素对以便使用wrapAll()将它们包装起来。我不能更改我正在处理的html。有人能帮忙吗?

3个回答

13
$('input').each(function(){
    $(this).next('label').add(this).wrapAll('<span>');
});
  1. next会查找最近的兄弟元素。
  2. add会将匹配的项目添加到集合中。

演示


4
你可以试一试这个。
$('input').each(function(){
    $(this).next().andSelf().wrapAll('<span>');
});

2

它选择所有紧接着输入(成对)之前的标签,之后你可以自行处理 ;) - danp

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接