2009-10-04 135 views
3

简单的问题,我认为,但无法弄清楚这在DIV中包装内容

如何将特定文本包装到DIV?

有这种 Price:<strong>£12.30 (Ex VAT)</strong>

,需要有这样的:

<div>Price:<strong>£12.30 (Ex VAT)</strong></div> 

感谢您的帮助

+0

你为什么要使用JavaScript这样做呢?您应该使用服务器端语言生成正确的标记。 – 2009-10-04 18:02:02

+0

对于一个更可靠的方法,它可能会帮助发布* all *你的html,因为这种技术会根据你标记的所有东西而有所不同,因为你必须定位一个文本节点兄弟节点和一个元素节点。 – 2009-10-04 18:10:23

回答

2

可以使用的appendChild方法:

var newDiv = document.createElement('div'); 

newDiv.innerHTML = "Price:<strong>£12.30 (Ex VAT)</strong>"; 

document.getElementById('parentDiv').appendChild(newDiv); 

这里是JQuery equvalent以上代码:

var newDiv = $("<div>Price:<strong>£12.30 (Ex VAT)</strong></div>"); 
$('#parentElement').append(newDiv); 

或者:

$("<div>Price:<strong>£12.30 (Ex VAT)</strong></div>").appendTo("#parentElement"); 
+0

寻找jQuery方法吗? – Dom 2009-10-04 18:13:54

0
var str = 'Price:<strong>£12.30 (Ex VAT)</strong>'; 
var div = $('<div />').html(str); 
0

jQuery有一个wrap函数,它正是你所描述的...

var str = "Price: <strong>£12.30 (Ex VAT)</strong>"; 

$(str).wrap("<div></div>").appendTo("body");