如何在javascript中将文本区域拆分为多个部分
how to split the textarea into parts in javascript
我正在尝试打开用户在textarea
中输入的5个URL但是数组并没有单独获取url,而是将它们全部获取:
function loadUrls()
{
var myurl=new Array();
for(var i=0;i<5;i++)
{
myurl[i] = document.getElementById("urls").value.split(''n');
window.open(myurl[i]);
}
}
您只需要将文本内容拆分一次。然后对该数组中的每个项进行迭代。我想你想要的是:
function loadUrls() {
var myurls = document.getElementById("urls").value.split(''n');
for(var i=0; i<myurls.length; i++) {
window.open(myurls[i]);
}
}
下面是一个工作示例:
var input = document.getElementById('urls');
var button = document.getElementById('open');
button.addEventListener('click', function() {
var urls = input.value.split(''n');
urls.forEach(function(url){
window.open(url);
});
});
<button id="open">Open URLs</button>
<textarea id="urls"></textarea>
请注意,现在的浏览器会采取额外的步骤来阻止弹出窗口。查看开发人员控制台中的错误。
我看到了一些问题。
- 您正在声明一个新的
Array
,然后通过迭代5次来添加值。如果他们投入了5个以上会发生什么?还是更少 split
返回已拆分项目的列表。因此,如果您有一个String:这是一个测试,并用空格将其拆分,它将返回:[this,is,a,test]。您不需要拆分项目并手动将其添加到新列表中
我建议做一些类似的事情:
var myUrls = document.getElementById("urls").value.split(''n');
for (var i = 0; i < myUrls.length; i++) {
window.open(myUrls[i]);
}
然而,正如其他人所建议的那样,为什么不使用多个inputs
而不是一个文本区域呢?使用它会更容易,而且可能更方便用户。
基本上:
document.getElementById("urls").value.split(''n');
返回一个数组,其中包含文本区域中的每一行。要获得第一行,您必须在拆分函数后声明[0],因为它将返回Array
中的第一个项,因为split
将在textarea中的每一行返回一个Array
。
document.getElementById("urls").value.split(''n')[0];
您的功能可以简化为:
function loadUrls(){
var MyURL = document.getElementById("urls").value.split(''n');//The lines
for(var i=0, Length = MyURL.length; Length > i; i++)
//Loop from 0 to length of URLs
window.open(
MyURL[i]//Open URL in array by current loop position (i)
)
}
示例:
line_1...
line_2...
收件人:
["line_1","line_2"]
相关文章:
- 拆分文本以每隔n个字符添加一行新行,并注意空格
- 如何将DIV标记的内容拆分为多个DIV
- 将AngularJS控制器拆分为多个文件
- 想要使用Javascript将一个JSON对象拆分为多个JSON对象
- 较短的正则表达式,按2个条件拆分,外部有空格
- 基于多个参数拆分Javascript数组中的值
- Javascript在第一个空格上拆分字符串
- 如何将日期和时间拆分为两个元素
- 拆分第二个分隔符值
- 基于两个分隔符进行拆分
- Javascript:拆分字符串,但仅使用 1 个结果
- 如何按子值将对象数组拆分为多个对象数组
- Regex-我需要在第一个数字后面拆分一个字符串
- Typescript 0.9.1.1模块被拆分为几个.ts文件
- angular js:将一个大型控制器拆分为多个文件
- 如何拆分具有多个分隔符的字符串
- 如何将复杂的字符串拆分为多个部分
- 使用 Jquery 将 JSON 数据拆分为多个数据
- Jquery 验证表单问题,同时拆分 2 个屏幕
- 在 2 个符号的索引处查找并拆分字符串