2014-01-30 88 views
0

如果我有一個包含正常文本,html代碼和鏈接的文本,那麼我想在給定的div內僅顯示a標記。應顯示其他標記,因爲它位於給定divjquery:只渲染<A>標記並保留其他標記

例如

// expected output: <h1>HTML CODE</h1> link 
$("#d1").append("<h1>HTML CODE</h1> <a href=''>link</a>"); 

// expected output: <h1>HTML CODE</h1> <strong>xyz</strong> 
$("#d2").append("<h1>HTML CODE</h1> <strong>xyz</strong>"); 

// expected output: <h1>HTML CODE</h1> link 
$("#d3").text("<h1>HTML CODE</h1> <a href=''>link</a>"); 

OR,再舉一個例子可以說,我有一個文本

<small>hello </small> hw r u here is <a href=''>link</a><h6>thank you</h6>

我要像

<small>hello </small> hw r u here is link <h6>thank you</h6>

我如何能做到這一點的輸出。 HERE IS JSFIDDLE

回答

1

你可以試着在後面加上一個文本節點,而不是一個字符串 - 使用document.createTextNode()

$("#d2").append(document.createTextNode("<h1>HTML CODE</h1> <strong>xyz</strong>")); 

演示:Fiddle

+0

它是一樣的'文本'的權利?但我的問題是我只是想避免HTML標籤其他'a' – manish

1

.text().append()這樣試試這個連鎖您的jQuery:

// expected output: <h1>HTML CODE</h1> link 
$("#d3").text("<h1>HTML CODE</h1>").append("<a href=''>link</a>"); 

因爲.text()將html字符串作爲textnode推送,這就是爲什麼您的鏈接不作爲鏈接追加的原因。你必須追加它。

+0

給定的文字怎麼樣' hjhjh hello hw r u link

hhhhhhhhhh
'。你將如何渲染這個? – manish