在js或jquery中,我要清除里面的span标签,但是里面还有a标签,我要保留a标签删除span

在js或jquery中,我要清除里面的span标签,但是里面还有a标签,我要保留a标签删除span需要怎么做?$(".div).empty()?,怎么搞,求指教!... 在js或jquery中,我要清除里面的span标签,但是里面还有a标签,我要保留a标签删除span需要怎么做?
$(".div).empty()?,怎么搞,求指教!
展开
 我来答
Baby_原來
推荐于2016-02-16 · TA获得超过3402个赞
知道大有可为答主
回答量:1535
采纳率:94%
帮助的人:501万
展开全部
//选择div内的span标签
var objects=$(".div").children("span");
for(var i=0;i<objects.length;i++){
    //遍历span标签,移除span
    objects[i].remove();
}


remove()定义和用法

remove() 方法移除被选元素,包括所有文本和子节点。

该方法不会把匹配的元素从 jQuery 对象中删除,因而可以在将来再使用这些匹配的元素。

但除了这个元素本身得以保留之外,remove() 不会保留元素的 jQuery 数据。其他的比如绑定的事件、附加的数据等都会被移除。这一点与 detach() 不同。

语法

$(selector).remove()

追问
这个方法确实可以,但是,节点可以删除,但是它占用的空间还在是怎么回事儿?
追答
remove()不会保留占用的位置啊
yjx759520
2018-02-28 · TA获得超过338个赞
知道小有建树答主
回答量:449
采纳率:66%
帮助的人:207万
展开全部

那既然要删除span ,保留a标签,那为什么不把它们分开?如果你想实现这个效果,可以先找到span的父节点元素,然后把a标签放到父节点元素里面,然后在删掉span就可以了。

var parent = jQuery("span").parent();
var a = jQuery("span").find("a").clone();
parent.append(a);
jQuery("span").remove();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2015-11-26
展开全部
可以先把里面需要保留的a标签取出来然后remove掉span,然后再把刚才取出来的a标签放进去
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
扌免哥欠
2018-02-28 · TA获得超过107个赞
知道小有建树答主
回答量:110
采纳率:66%
帮助的人:72.4万
展开全部
用unwrap();
var a = $("a");
a.unwrap();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式