0
4

2 回答 2

0

假设 'reminder_email' 是id相关的textarea,并且响应是电子邮件数组:

var emailAddressesArray = ['emailAddress@host.tld', 'emailAddress2@otherHost.tld'];
$('#reminder_email').val(emailAddressesArray.join(', '));

JS 小提琴演示

另一方面,如果您尝试a使用协议创建元素的 HTML mailto(用于在其他地方复制/粘贴):

var email = 'emailAddress@host.tld';
$('#reminder_email').val('<a href="mailto:' + email + '">' + email + '</a>');

JS 小提琴演示

请注意,您不能在 a 中创建可点击的链接textarea,因为它们不能包含 HTML(只是文本)。

但是,如果您有一个可以从中创建价值的对象:

var email = [{
    'address': 'emailAddress@host.tld',
        'id': 'emailOne',
        'text': 'UserNameOne'
}, {
    'address': 'anotherAddress@host2.tld',
        'id': 'emailTwo',
        'text': 'UserNameTwo'
}];
$('#reminder_email').val(function(_, v){
    for (var i = 0, len = email.length; i < len; i++){
        v += '<a href="mailto:' + email[i].address + '" id="' + email[i].id + '">' + email[i].text + '</a>, ';
    }
    return v.slice(0, v.length - 2);
});

JS 小提琴演示

你的代码的原因:

$('reminder_email').value += '<a href='#' id='+id'>+email+</a>;

没有工作是双重的:

  1. $('reminder_email')是一个寻找reminder_email标签(不存在)的选择器;假设它是id您要查找的,则需要使用$('#reminder_email')
  2. jQuery 对象/集合没有.value属性,而是使用val()方法(不带参数获取当前值,或带参数设置新值)。
于 2013-09-21T10:11:07.747 回答
0

希望你已经导入了 jquery,试试这个:

$('reminder_email').val("<a href='#' id='"+id+"'>" + email + "</a>");

你在附加它吗?你为什么用+=

于 2013-09-21T10:13:45.523 回答