[英]jQuery append HTML with javascript link
我有一种情况,我应该用jQuery附加HTML。 在此html中,有一个带有javascript链接的a-tag。
我该如何解决?
$(".messages-wrapper").append('<li class="chat-wrapper"><a class="chat" href="javascript:openChat('http://domain.com/Messenger.aspx'">Chat öffnen<span></span><small>Chat öffnen</small></a></li>')
谢谢!!
您可以使用反斜杠对字符串中的单引号或双引号进行转义。
'... href="javascript:openChat(\'http...\')">...'
您可能因为字符串中的引号而遇到问题。 单引号会尽早终止字符串并导致JavaScript错误。
但是,请考虑在附加html的同时应用处理程序。
var link = $('<li class="chat-wrapper"><a class="chat" href="http://domain.com/Messenger.aspx">Chat öffnen<span></span><small>Chat öffnen</small></a></li>')
.find('a')
.click( function() {
openChat($(this).attr('href'));
return false;
});
link.appendTo(".messages-wrapper");
您只需要使用\\'
转义字符串中的撇号即可:
$(".messages-wrapper")
.append('<li class="chat-wrapper"><a class="chat" href="javascript:openChat(\'http://domain.com/Messenger.aspx\'">Chat öffnen<span></span><small>Chat öffnen</small></a></li>');
只需使用已创建的对象的嵌套附加,即可执行点击操作。
$('.messages-wrapper')
.append(
$('<li class="chat-wrapper" />")
.append(
$('<a class="chat" href="http://domain.com/Messenger.aspx"><small>Chat öffnen</small></a>')
.click(function(){
openChat(this.href);
return false;
})
)
);
反正这更容易理解意图,恕我直言。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.