[英]Assign html <a> tag to a textarea value
我需要將<a>
標記分配給textarea值,並用逗號分隔。 我正在嘗試插入從ajax請求的響應中獲得的電子郵件ID。 如何使用JS實現呢?
我嘗試使用:
$('reminder_email').value += "<a href='#' id='+id'>+email+</a>";
假設'reminder_email'是相關textarea
的id
,並且響應是一組電子郵件:
var emailAddressesArray = ['emailAddress@host.tld', 'emailAddress2@otherHost.tld'];
$('#reminder_email').val(emailAddressesArray.join(', '));
JS小提琴演示 。
如果,另一方面,你要創建的HTML a
元素與mailto
(在其他地方復制/粘貼)協議:
var email = 'emailAddress@host.tld';
$('#reminder_email').val('<a href="mailto:' + email + '">' + email + '</a>');
JS小提琴演示 。
請注意,您不能在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>;
沒用是雙重的:
$('reminder_email')
是一個選擇器,用於查找reminder_email
標簽(不存在); 假設這是您要查找的id
,則需要使用: $('#reminder_email')
, .value
屬性,而是使用val()
方法(不帶參數獲取當前值,或帶參數設置新值)。 希望您導入了jQuery,請嘗試以下操作:
$('reminder_email').val("<a href='#' id='"+id+"'>" + email + "</a>");
您要附加嗎? 為什么使用+=
?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.