jcmitch
jcmitch

Reputation: 2166

Javascript Line Break Textarea

I have a text area that I want to pre-populate with some specific text that includes line breaks. I'm populating the area onLoad but I can't get the line breaks to work correctly. Any advice on how to do that? Thanks.

Upvotes: 14

Views: 41858

Answers (6)

Loot
Loot

Reputation: 3

break a textarea into an array

textarea content: underscore_case first_name Some_Variable calculate_AGE delayed_departure

   const variableCase = function (variable) {
        const variableSplit = variable.split('\n');
        const spaceRemoved = [];

        for (const removeSpace of variableSplit) {
          const RST = removeSpace.trim();
          spaceRemoved.push(RST);
        }

        console.log(spaceRemoved); // output: ["underscore_case", "first_name", "Some_Variable", "calculate_AGE", "delayed_departure"]
      };

Upvotes: 0

Araston
Araston

Reputation: 101

replace like this:

str.replace(/[\r\n]+/g, '\\\n') %>';

Upvotes: 0

Shawn
Shawn

Reputation: 1

i had tried many ways to break a textarea into an array. used this method, it might not be the best.

using .split('\n') does not remove the break and it will create whitespace or break when insert into database. therefore, i replace it with

textarea content:
12345
6789


a = a.replace(/\n|\r\n|\r/g, "<br>");

var stringArray = a.split('<br>');

for (var i = 0; i < stringArray.length; i++) {
var myString = stringArray[i];
myString = myString.replace('<br>', "");

response.write(myString);
}

Upvotes: 0

Joseph Marikle
Joseph Marikle

Reputation: 78520

As stated multiple times, you need the \n character.

see here: http://jsfiddle.net/XbALv/

document.getElementById("blah").value = 
"This" + "\n" +
"is some" + "\n" +
"text" + "\n";

Upvotes: 1

Diodeus - James MacFarlane
Diodeus - James MacFarlane

Reputation: 114367

You need to replace line breaks with newline characters: \n

Upvotes: 18

Joseph Silber
Joseph Silber

Reputation: 219938

Just use the newline character: \n.

So, if you want the textarea to look like this:

This is line 1
This is line 2

You would use a string like this:

"This is line 1\nThis is line 2";

See a demo here: http://jsfiddle.net/MzmBd/

Upvotes: 8

Related Questions