2011-11-18 136 views
0

我目前生成以下DIV的內容:添加HTML到一個div使用jQuery

<div class="dates" >November 18, 2011 7:30 pm November 19, 2011 7:00 pm </div> 

我想使用jQuery頁面的加載改變div來讀這樣的:

<div class="dates" >November 18, 2011 7:30 pm<br />November 19, 2011 7:00 pm<br /></div> 

希望得到jQuery來的pm在專區內改變實例pm<br />

任何想法?

+0

如果您正在生成div,那麼爲什麼當時不要插入
? –

+0

@SteveWellens,哈!優秀點。 –

回答

0

$('.dates').html($('.dates').html().replace('pm', 'pm<br />'));

http://jsfiddle.net/jLcKa/

+0

這完成這項工作!非常感謝 – user1038620

+0

@ user1038620,你會不會有下午的地方嗎? –

0
$('.dates').append($('<br />')); 

會這樣嗎?

1

你可以使用正則表達式sometihng像

var replaced = $("div.dates").html(); 
replaced = replaced.replace(/pm/gi, "pm <br />") 
$("div.dates").html(replaced); 
+0

必須非常小心,雖然使用該正則表達式,因爲它會發現任何和所有pm(全局忽略大小寫)的實例並將其替換爲下午
szeliga

0

Demo

$(function(){ 
    var dates = $(".dates").html(); 
    var regex = /([ap]m) /gi; 

    dates = dates.replace(regex, "$1<br>"); 

    $(".dates").html(dates); 
}) 
0

這將這樣的伎倆:

$(function() { 
    var dates = $('.dates'); 
    var html = dates.html(); 
    html = html.replace(/ (pm) /gi, ' $1 <br /> '); 
    dates.html(html); 
}); 

的jsfiddle here

上面的代碼將匹配的所有元素以「日期」級,並且每個「點」,它發現後插入拆分元件,同時尊重原始文本時的殼體。