在js或jquery中,我要清除里面的span标签,但是里面还有a标签,我要保留a标签删除span
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在js或jquery中,我要清除里面的span标签,但是里面还有a标签,我要保留a标签删除span相关的知识,希望对你有一定的参考价值。
在js或jquery中,我要清除里面的span标签,但是里面还有a标签,我要保留a标签删除span需要怎么做?
$(".div).empty()?,怎么搞,求指教!
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()不会保留占用的位置啊
参考技术A那既然要删除span ,保留a标签,那为什么不把它们分开?如果你想实现这个效果,可以先找到span的父节点元素,然后把a标签放到父节点元素里面,然后在删掉span就可以了。
var parent = jQuery("span").parent();var a = jQuery("span").find("a").clone();
parent.append(a);
jQuery("span").remove(); 参考技术B 可以先把里面需要保留的a标签取出来然后remove掉span,然后再把刚才取出来的a标签放进去 参考技术C 用unwrap();
var a = $("a");
a.unwrap();
js怎样清除或者替换添加的标签
如图,我想点击按钮文字在同一个地方交替出现,而不是这样子往后排列,应该怎么做?用清除或者替换的方法应该怎样弄?
你可以把你的appendChild加在 if判断里,判断一次 先清空,再加上。你就写一个盒子,在盒子里进行append,而不是在body里了。清空的话就将整个盒子内容innerHTML为空就行了
你如果只是交替的改变的话,就没必要用appendChild();,直接用 obj.innerHTML = "你的内容";就行了追问
写一个盒子什么意思?没明白,还有清空是用的哪个方法??新手
追答盒子就是div标签的意思,你把要写的文字放在一个div里面,比如说div的id='a';你先将里面的内容清空,就写a.innerHTML='';就行了,你要往里面加文字,就=右侧写你的文字就行了,两种文字分别写在if的两个判断里,先清空,在写入
参考技术A function strlens()//判断字符串长度超过12长度时后面显示...var strlobj= document.getElementsByClassName("list_title");
var class_sum = strlobj.length;
for(var i=0;i<class_sum;i++)
var strvalue= strlobj[i].innerText;
strvalue = strvalue.substr(0,10)+"......";
strlobj[i].innerHTML = "";//清除后插入
var texts = document.createTextNode(strvalue);//插入数据
strlobj[i].appendChild(texts);
以上是关于在js或jquery中,我要清除里面的span标签,但是里面还有a标签,我要保留a标签删除span的主要内容,如果未能解决你的问题,请参考以下文章