JS- 文本区域行到 javascript 数组

JS- textarea lines to javascript array

本文关键字:javascript 数组 文本 区域 JS-      更新时间:2023-09-26

我想在js数组中保存文本区域行。这段代码有效,但是如果我们在文本区域中有空行,数组元素值在空行后设置未定义!
演示: http://jsfiddle.net/pYTjR/3/

<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script>
function check(){
var lines = $('#links').val().split(/'n/);
var texts = []
for (var i=0; i < lines.length; i++) {
  if (/'S/.test(lines[i])) {
    texts.push($.trim(lines[i]));
    }
var links = texts;
var str = links[i];
alert(i+"-  "+str);
}
}
</script>
</head>
<body>
<textarea id="links" name="upload" cols=80 rows=10>
www.example.com/book111.pdf
www.example.com/book222.pdf
www.example.com/book333.pdf
www.example.com/book444.pdf
www.example.com/book555.pdf
</textarea>
<input type="submit" id="getsize" name="getsize" value="textarea to array" onclick= "check()" />
</body>
</html>

演示:http://jsfiddle.net/pYTjR/3/

我认为它的功能符合您的预期,除了没有正确发出警报。 试试这个:

http://jsfiddle.net/pYTjR/7/

function check(){
    var lines = $('#links').val().split(/'n/);
    var texts = [];
    for (var i=0; i < lines.length; i++) {
        if (/'S/.test(lines[i])) {
            texts.push($.trim(lines[i]));
        }
    }
    for (var i=0; i < texts.length; i++) {
        alert(i+"-  "+texts[i]);
    }
}