2011-08-09 144 views
0

我想創建一個簡單的JavaScript連接符是需要2 HTML textarea標籤作爲輸入,並連接每行從1 textarea的每一行從文本區域2.創建一個簡單的JavaScript置器

所以我想我米基本上尋找一個JavaScript功能,將產生從textarea的,其中每個新的線限定一個新的元件陣列中,像這樣的數組:

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

變得...

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

我該怎麼做?我可以在php中很容易地做到這一點,但js讓我感到神祕。如果任何人都可以分享這樣做的代碼,我會非常感激!

感謝,

克里斯

回答

5
var ary = (
    document.getElementById('yourTextArea1').value + 
    document.getElementById('yourTextArea2').value 
).split('\n'); 

如果需要

+0

即只做一個文本框。 OP有兩個。 –

+0

@ Diodeus - thx,固定 –

+0

這不會創建一個從這兩個值的長列表?所以如果text1是「one \ n two」而text2是「a \ n b」,我想返回「one a,one b,two a,two b」。我認爲這會返回「一,二,一,B」 - 對嗎? split函數是我在尋找的東西,雖然非常感謝,我想我只需要創建2個單獨的數組,然後使用for循環將每行text1與每行text2連接起來。 – Chris

0

拋出那些之間的額外+ '\n'這應該工作:

無功海峽=「1 \ N2 \ N3 4 「;

var strArray = str.split(「\ n」);

0
myArray =(document.getElementById('a').value+document.getElementById('b').value).split('\n'); 
0

您可以使用@cwolves提供了什麼,但它可能不會在使用回車,而不是一個換行符PC上工作。下面是修復的,也可以加入所有文字區域的腳本:

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」變量中。

廣告@米

0

1從2個文本域的字符串值數組:

var arr = document.getElementById('textArea1').value.split('\n') 
     .concat(document.getElementById('textArea2').value.split('\n');