Создание простого конкатенатора JavaScript - PullRequest
0 голосов
/ 10 августа 2011

Я хотел бы создать простой конкатенатор javascript, который принимает 2 тега HTML textarea в качестве входных данных и объединяет каждую строку из текстовой области 1 с каждой строкой из текстовой области 2.

Так что я думаю, что в основном я ищу функцию javascript, которая будет генерировать массив из текстовой области, где каждая новая строка отделяет новый элемент в массиве, например:

Textbox:
item 1\n
item 2\n
item 3

становится ...

["item 1","item 2","item 3"]

Как мне это сделать? Я мог бы сделать это довольно легко в php, но js озадачивает меня. Если кто-то может поделиться кодом, который сделает это, я буду очень признателен!

Спасибо

Chris

Ответы [ 5 ]

5 голосов
/ 10 августа 2011
var ary = (
    document.getElementById('yourTextArea1').value +
    document.getElementById('yourTextArea2').value
).split('\n');

бросить дополнительные + '\n' между теми, кто желателен

0 голосов
/ 10 августа 2011

1 массив из строковых значений 2 текстовых областей:

var arr = document.getElementById('textArea1').value.split('\n')
         .concat(document.getElementById('textArea2').value.split('\n');
0 голосов
/ 10 августа 2011

Вы можете использовать предоставляемые @cwolves, но они могут не работать на компьютерах, которые используют перевод каретки вместо перевода строки.Вот скрипт, который исправляет это и также может присоединиться ко всем текстовым областям:

var ta=document.getElementsByTagName("textarea");
var vals=[];
for(var i=0;i<ta.length;i++){
    vals.push(ta.value.replace(/\r\n|\n\r/gim,"\n").replace(/\r/gim,"\n");
}
var val=vals.join("\n")
var ary=val.split("\n");

Итак, текстовые области на странице помещаются в переменную "ta", затем мы заменяем возврат каретки переводом строки.Результат его разделения на массив находится в переменной «ary».

Ad @ m

0 голосов
/ 10 августа 2011
myArray =(document.getElementById('a').value+document.getElementById('b').value).split('\n');
0 голосов
/ 10 августа 2011

Это должно работать:

var str = "1 \ n2 \ n3 4";

var strArray = str.split ("\ n");

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...