【问题标题】:How to use jQuery to convert text to email links如何使用 jQuery 将文本转换为电子邮件链接
【发布时间】:2016-10-01 03:31:49
【问题描述】:

我有一个 HTML 表格,其中一列是电子邮件地址;除了垃圾邮件问题,我想将此列中的每个 <td> 元素转换为 mailto: 链接。

这是我得到的:

$("table.data tbody tr td:last").each(function() {
    var email = $(this).val();
    $(this).html('<a href="mailto:' + email + '">' + email + '</a>');
});

这是表格(示例):

<tr>
    <td>Joe</td>
    <td>Shmoe</td>
    <td>example@example.net</td>
</tr>

怎么了?

【问题讨论】:

    标签: jquery email html-table


    【解决方案1】:

    您的 jquery 选择器错误。

    当您执行 'table.data tbody tr td:last' 时,它只会选择最后一行的最后一个单元格。

    你需要做的是这样的:

    $(document).ready(
        function()
        {
            //For each row...
            $('table.data tbody tr').each(
                function()
                {  
                    //...find the last cell.
                    var lastCell = $(this).find('td:last');
                    $(lastCell).html('<a href="mailto:' + $(lastCell).text() + '">' + $(lastCell).text() + '</a>');
                }
            );
        }
    );
    

    工作演示:http://jsbin.com/umiza 代码:http://jsbin.com/umiza/edit

    【讨论】:

      【解决方案2】:

      您应该使用 .text() 而不是 .val()

      $("table.data tbody tr td:last").each(function() {
          var email = $(this).text();
          $(this).html('<a href="mailto:' + email + '">' + email + '</a>');
      });
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-07-08
        • 2011-08-11
        • 2011-04-22
        • 2016-12-06
        • 2013-04-26
        • 2012-01-05
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多