问问题
122 次
2 回答
0
假设 'reminder_email' 是id
相关的textarea
,并且响应是电子邮件数组:
var emailAddressesArray = ['emailAddress@host.tld', 'emailAddress2@otherHost.tld'];
$('#reminder_email').val(emailAddressesArray.join(', '));
另一方面,如果您尝试a
使用协议创建元素的 HTML mailto
(用于在其他地方复制/粘贴):
var email = 'emailAddress@host.tld';
$('#reminder_email').val('<a href="mailto:' + email + '">' + email + '</a>');
请注意,您不能在 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);
});
你的代码的原因:
$('reminder_email').value += '<a href='#' id='+id'>+email+</a>;
没有工作是双重的:
$('reminder_email')
是一个寻找reminder_email
标签(不存在)的选择器;假设它是id
您要查找的,则需要使用$('#reminder_email')
:- 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 回答