2012-05-22 69 views
3

使用JavaScript做一些文本交換(感言淡入/淡出),並且希望在引號內插入相當於<br/>的引號,以便引用的作者位於下一行。在下面的代碼中,我嘗試按照JavaScript: How to add line breaks to an HTML textarea?的說明進行操作,但不知道如何插入/\n\r?/g以使其正常工作。在javascript中引用的文本中插入換行符

<script type="text/javascript"> 
    var text = document.forms[0].txt.value; 
    text = text.replace(/\n\r?/g, '<br />'); 
</script> 

<script type="text/javascript"> 

    window.testimonials = [ 
     '"This was a great experience" /\n\r?/g - Max Cameron, ThinkTank', 
     '"This was a great experience" /\n\r?/g - Max Cameron, ThinkTank', 
     "source code" 
    ]; 
</script> 

有什麼辦法強制它到下一行嗎?謝謝!

+0

如果您要插入的'/ \ n \ r/g'(因爲它聽起來你是)爲什麼不只是使用你想要的文字('
'),或者是那些來自你無法編輯的來源的證明書? –

回答

0

Borrowing from what you linked to:

window.testimonials = [ 
'"This was a great experience" /\n\r?/g - Max Cameron, ThinkTank'.replace(/(\n\r?)|(,)/g, '<br />');, 
'"This was a great experience" /\n\r?/g - Max Cameron, ThinkTank'.replace(/(\n\r?)|(,)/g, '<br />');, 
"source code"]; 
+0

hm,這完全破壞了文本交換功能。有沒有其他方法? – grace

+0

@grace:現在試試 – qwertymk

+0

仍然不行:\是否有任何其他腳本,您推薦用於交換淡入淡出過渡的褒獎? – grace

3

你在這裏做的事情很奇怪。你爲什麼要在你的變量中插入一個「正則表達式」?

小提琴:
http://jsfiddle.net/4Fheu/

試試這個:

<script type="text/javascript"> 
    var text = window.testimonial; // or maybe: document.forms[0].txt.value; 
    text = text.replace(/\n\r?/g, '<br />'); 
    alert(text); 
</script> 

<script type="text/javascript"> 

    window.testimonials = [ 
     '"This was a great experience" \n - Max Cameron, ThinkTank', 
     '"This was a great experience" \n - Max Cameron, ThinkTank', 
     "source code" 
    ]; 
</script> 

/\n\r?/是一個正則表達式,上面寫着: '換行',接着0或1 '回車'。

'/\n\r?/'是一個字符串可能看起來像這樣的:?

/
/

相關問題