2013-07-30 115 views
0

我一直在尋找在這裏,嘗試不同的東西,但我不能把它固定..的Javascript:刪除新行不起作用

var save_field = res[0]; 
var save_value = res[1]; 
save_value = save_value.replace(/\n/gm, '<br />'); 
console.log(save_value); 

$('#'+save_field).html(save_value); 

的「save_value」變量有像「Klant內容:Vermaeren B. \ nType:Brandstoffilter \ nVoertuig:Peugeot 306 1.4i XR「。我想用<br />替換那些,因爲我在一個div中顯示它..但是\ n不會被替換..:/

我已經用jQuery $ .ajax()請求檢索了內容。我也試圖在該AJAX文件的結果上使用nl2br(),但JavaScript一直給我換行\ n ..

有人可以幫我嗎?

在此先感謝!

回答

3

需要在「n」之前轉義「\」。嘗試:

save_value = save_value.replace(/\\n/gm, '<br />'); 
+0

這樣的小東西,可以做很多.. 它爲我,謝謝! –

+0

@BjörnVermaeren太棒了!你歡迎.. – Cherniv

0

如果它是一個字符串\n而不是一個新行,你會想逃離反斜槓\\n - 你可能還需要檢查返回字符\r\\r

save_value = save_value.replace(/(\\r)?\\n/gm,'<br/>');//literal string 

save_value = save_value.replace(/\r?\n/gm,'<br/>');//newline characters 

或額外包含,都!

save_value = save_value.replace(/\r?\n/gm,'<br/>').replace(/(\\r)?\\n/gm,'<br/>'); 
+0

你可以只使用一個任務,連接兩個'.replace'在一起 –

+0

@LightStyle我知道,他們是選項 - 使用一個或另一個取決於新行是文字字符串還是實際換行符 – SmokeyPHP