2012-11-21 76 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