将文本区域逐行转换为数组,然后使用Jquery将其附加到div?

时间:2013-01-02 22:55:07

标签: php javascript jquery html

我已尝试过大量代码,并将其留在javascript文件中注释掉了。 我想获取textarea的内容(由用户定义)并将其转换为数组。然后我将使用for循环将每个元素追加到一个新的div。所有当点击button1时。

我为此设置了一个jsfiddle

http://jsfiddle.net/34uBW/1/

我看过这里的其他帖子,我想我错过了一些我需要使用php的东西吗? (之前从未使用过php)

谢谢

js看起来像这样

$(document).ready(function()
{

$('#button').click(function()
{    
     var toAdd = $('input[name=checkListItem]').val();
     var $newdiv = "<div class='draggable'>" + toAdd + "</div>";
     $("#1").append($($newdiv).draggable());


}
);

$('#button1').click(function()
{
   /* //var yes = $('input[name=myname]').val();
    //var yes = $('input[name=myname]').val().split('\n');
   var yes = document.getElementById('textarea').value.split('\n');
   //var yes = $('#textarea')[0].value.split('\n');        
   var $newdiv1 = "<div class='draggable'>" + yes[0] + "</div>";
    $("#1").append($($newdiv1).draggable());
    var lines = $('#textarea').val().split(/\n/);
    var texts = []
    for (var i=0; i < lines.length; i++) {
    // only push this line if it contains a non whitespace character.
    if (/\S/.test(lines[i])) {
    texts.push($.trim(lines[i]));
    }
    }

    alert(JSON.stringify(texts));​*/

}
);





});

1 个答案:

答案 0 :(得分:3)

这是你想要的吗?

var lines = $("textarea").val().split(/\n/g);      //Split the lines
for(var i=0; i < lines.length; i++){               //Loop through the Array
    var ele = $("<p>");                            // ├─ Create a node
    ele.html(lines[i]);                            // ├─ Put in the text
    $("#opt").append(ele);                         // └─ Append it
}

http://jsfiddle.net/DerekL/Ge2yF/
http://jsfiddle.net/DerekL/Ge2yF/16

这会将textarea的值按\n(换行符)拆分为数组,然后将其附加到div