2012-02-25 86 views
4
<div id="content"> 
... 
<p>NUMBER times...</p> 
... 
<p>Place N°: NUMBER</p> 
</div> 

如何替換內容div中的所有NUMBER? 我試過replace方法,但沒有奏效。JQuery:替換div內的字符串

謝謝。

回答

5

您可以使用標準的JavaScript替換函數來處理字符串。

oldhtml = $('div#content').html(); 
var newhtml = oldhtml.replace(/NUMBER/g, "123"); 
$('div.demo-container').html(newhtml); 
+5

請注意,更換所有的HTML內容可能會影響現有屬性。 – 2012-02-25 21:18:54

+0

謝謝你的作品。 – Laura 2012-02-25 21:30:21

3

您應該迭代所有文本節點並替換它們中的文本。

$('#content').children().each(function() { 
var textNode = $(this); 
textNode.text(textNode.text().replace("NUMBER", "NEW")); 
}); 

此代碼假定#content的所有孩子都只包含文本。

1

試試這個:

$('#content').children().each(function() { 
    $(this).html(function (i, html) { 
     return $(this).html().replace(/NUMBER/g, '123456'); 
    }); 
});