繁体   English   中英

将javascript onclick事件附加到定位标记

[英]Appending the javascript onclick event to anchor tag

我试图将onclick事件附加到我的Phonegap应用程序中。 它将链接到外部浏览器的位置。

我的代码:

pair +='<div class="card_background" style="background-image: url("http://placehold.it/600x200");" valign="bottom" class="card-header color-white no-border"><div class="card_overlay"></div><div class="animated_background"></div><h3 class="card-title">'+ results.rows.item(i).title +'</h3></div><div class="card-content"><div class="card-content-inner"><p class="color-gray event_details">Event Location:  <strong>'+ results.rows.item(i).eventlocation +'</strong></p><p class="color-gray event_details">Event Date: <strong>'+ date + " " + month + " " + year +'</strong></p><a href="#" onclick="window.open("'+ results.rows.item(i).eventOrganiserLink +'", _system, location=yes);">Google</a><br/></div></div>';

内部循环,稍后我将其附加到div

我正在尝试添加:

<a href="#" onclick="window.open("'+ results.rows.item(i).eventOrganiserLink +'", _system, location=yes);">Google</a>

它给我错误

提前感谢

我已经简化了您的代码。 考虑以下:

var pair = '';
var eventOrganiserLink = '[EVENT ORGANISER LINK]';

pair += '<a href="#" onclick="window.open("'+ eventOrganiserLink +'", _system, location=yes);">Google</a>';

这将生成以下内容:

<a href="#" onclick="window.open("[EVENT ORGANISER LINK]", _system, location=yes);">Google</a>

onclick属性以双引号(“)开头,这意味着它将在其后查找第一个双引号以将其关闭。就在window.open(紧随其后,这意味着该部分是唯一将被设置为onclick属性的东西。在StackOverflow的代码框中,查看onclick属性中的颜色如何真正不匹配?

这有点棘手,因为我们要混合使用引号(设置对变量)和双引号(作为该变量内的文本,以后将用作html-因此它必须有效)。

您可以对第一个window.open参数使用单引号,并在pair变量的赋值中将其转义,如下所示:

var pair = '';
var eventOrganiserLink = '[EVENT ORGANISER LINK]';

pair += '<a href="#" onclick="window.open(\''+ eventOrganiserLink +'\', _system, location=yes);">Google</a>';

这将产生:

<a href="#" onclick="window.open('[EVENT ORGANISER LINK]', _system, location=yes);">Google</a>

请注意[EVENT ORGANISER LINK]周围的单引号。 另请注意,现在颜色匹配。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM