2012-11-21 78 views
5

没有文字片段我有div容器中的HTML代码和其它的HTML元素和文本里面HTML内容的jQuery

<div id="container"><i class="myico"></i> text</div> 

我需要从容器得到只有HTML元素没有文本

,所以我需要得到的只有

<i class="myico"></i> 

它使用jQuery我怎样才能得到?

+0

我正好需要改变文本和HTML内容''

another txt changed
但 – Cichy

回答

2

只需要让元素使用下列之一:

var element = $("#container > i"); 
var element = $("#container i"); 
var element = $("#container .myico"); 
var element = $("#container").find("i.myico"); 

为了获得元素进行标记使用detach()的:

var element = $("#container > i").detach(); 

然后获得一个HTML代码,你可以使用outerHTML财产:

var html = element.get(0).outerHTML; 

DEMO:http://jsfiddle.net/tLvdZ/

+0

我怎样才能得到到这个标记并把它放到另一个容器中。此解决方案不工作'$('#cont2')。html($(“#container> i”)。detach()+'other text')' – Cichy

+0

@Cichy试试这个:'$(“#container i “).appendTo(”#cont2“);'或this:'$(”#cont2“)。append($(”#container i“),”other text“);'。这里是一个例子:http://jsfiddle.net/tLvdZ/1/。 – VisioN

+0

非常感谢。我用你的建议http://jsfiddle.net/tLvdZ/5/解决了我的问题 – Cichy

0
var htmltag = $("#container").html(); 
htmltag = htmltag.replace($("#container").text(),""); 

仅供参考,您可以使用: - refer this