将每行textarea转换为链接

时间:2012-01-10 04:02:07

标签: javascript jquery textarea

比方说,我有一个textarea和一个切换按钮:

<div class="input">
  <textarea id="links">
    http://facebook.com
    http://friendster.com
    http://google.com
    http://facebook.com
    http://friendster.com
  </textarea>
  <a href="#" class="toggle">Toggle</a>
</div>

如何通过点击切换按钮使textarea中的每个链接都可以点击?

$('.toggle').click(function(){
  var clickable = false;
  if(!clickable){
    var links = $(this).closest('.input').find('textarea').val().split('\n');
    $.each(links,function(){
      //lost here
    });
  }
  return false;
});

2 个答案:

答案 0 :(得分:3)

您无法在textarea中创建可点击链接,它们是纯文本。

虽然有可能的解决方法,你可以创建一个div,将textarea的格式化内容复制到这个div,当点击“Toggle”时,切换textarea和div。

答案 1 :(得分:2)

DEMO

您的each函数会获取可用于制作锚点的索引和值参数

$.each(links, function (i, val) {
    var newA = $("<a />").text(val).attr("href", $.trim(val));

    $("#links").append(newA).append("<br>");
});

(虽然显然你必须将它们添加到div中,就像小提琴一样。正如anrie所说,textareas只能保留文本。)