我想创建一个简单的javascript连接器,它将2个HTML textarea
标签作为输入,并将textarea 1中的每一行与textarea 2中的每一行连接起来。
所以我认为我基本上在寻找一个javascript函数,它将从textarea生成一个数组,其中每个新行都在数组中分隔一个新元素,如下所示:
Textbox:
item 1\n
item 2\n
item 3
...变为
["item 1","item 2","item 3"]
我该怎么做?我可以在php中很容易地做到这一点,但是js让我感到困惑。如果有人可以分享这样做的代码,我真的很感激!
谢谢,
克里斯
答案 0 :(得分:5)
var ary = (
document.getElementById('yourTextArea1').value +
document.getElementById('yourTextArea2').value
).split('\n');
如果需要,在这些之间再加+ '\n'
答案 1 :(得分:0)
这应该有效:
var str =“1 \ n2 \ n3 4”;
var strArray = str.split(“\ n”);
答案 2 :(得分:0)
myArray =(document.getElementById('a').value+document.getElementById('b').value).split('\n');
答案 3 :(得分:0)
您可以使用@cwolves提供的内容,但它可能不适用于使用回车而非换行的PC。这是一个修复它的脚本,也可以加入所有textareas:
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");
所以这里将页面上的textareas放入“ta”变量中,然后我们用换行符替换回车符。它被拆分成数组的结果是“ary”变量。
广告@米
答案 4 :(得分:0)
来自2 textareas的字符串值的1个数组:
var arr = document.getElementById('textArea1').value.split('\n')
.concat(document.getElementById('textArea2').value.split('\n');