简体   繁体   中英

How to force a line break on a Javascript concatenated string?

I'm sending variables to a text box as a concatenated string so I can include multiple variables in on getElementById call.

I need to specify a line break so the address is formatted properly.

document.getElementById("address_box").value = 
(title + address + address2 + address3 + address4);

I've already tried \\n after the line break and after the variable. and tried changing the concatenation operator to +=.

Fixed : This problem was resolved using;

document.getElementById("address_box").value = 
(title + "\n" + address + "\n" + address2 + "\n" +  address3 +  "\n" + address4);

and changing the textbox from 'input type' to 'textarea'

You can't have multiple lines in a text box, you need a textarea. Then it works with \\n between the values.

document.getElementById("address_box").value = 
(title + "\n" + address + "\n" + address2 + "\n" + address3 + "\n" + address4);

You need to use \\n inside quotes.

document.getElementById("address_box").value = (title + "\\n" + address + "\\n" + address2 + "\\n" + address3 + "\\n" + address4)

\\n is called a EOL or line-break , \\n is a common EOL marker and is commonly refereed to as LF or line-feed , it is a special ASCII character

Using Backtick

Backticks are commonly used for multi-line strings or when you want to interpolate an expression within your string

 let title = 'John'; let address = 'address'; let address2 = 'address2222'; let address3 = 'address33333'; let address4 = 'address44444'; document.getElementById("address_box").innerText = `${title} ${address} ${address2} ${address3} ${address4}`;
 <div id="address_box"> </div>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM