0

我有未知数量的文本区域。要处理用户输入的数据,我需要将其内容转换为列表元素。

使用 JavaScript 和/或 jQuery,我该如何转换:

<textarea>content 1</textarea>
<textarea>content 2</textarea>
<textarea>content 3</textarea>

对此:

<ul>
    <li>content 1</li>
    <li>content 2</li>
    <li>content 3</li>
</ul>

我需要将生成的 UL 分配给发送到 AJAX 服务的变量。

编辑 - 到目前为止我试过:

var visibleTextareas = $('textarea:visible');

var listItems = visibleTextareas.replaceWith(function() {
    return $('<li>' + $(this).val() + '</li>');
});

var text = '<ul>' + listItems + '</ul>';
console.log(text);

这导致<ul>[object Object]</ul>被记录到控制台并且后端响应它需要一个 UL。

4

2 回答 2

2

尝试这样的事情:

var output = '<ul>';

$('textarea').each(function(){
    output += '<li>' + $(this).val() + '</li>';
});

output += '</ul>';

那对你有用吗?

编辑: .val()在这种情况下更合适。

于 2013-03-21T09:51:23.353 回答
0

查看上的jQuery API.each(),第二个示例应该对您有所帮助..

于 2013-03-21T09:52:02.180 回答