2017-06-21 57 views
0

我从JSON创建一些Google地图标记,我想使用速记if语句来格式化内容。以下是我现在所拥有的:谷歌地图infowindow.set内容条件

infowindow.setContent('<strong>' + this.title + '</strong>' + this.description + '<a href="' + this.link + '" target="_blank">Website</a>'); 

所有标记将有一个冠军,但有些人可能有一个描述,但不是链接或链接,但没有说明。我怎样才能让这个如果标记有一个链接,说明它看起来像上面的,如果它有一个链接,但没有说明它看起来就像这样:

infowindow.setContent('<strong>' + this.title + '</strong>' + '<br/>' + '<a href="' + this.link + '" target="_blank">Website</a>'); 

或者这样,如果它有一个描述但不是一个链接:

infowindow.setContent('<strong>' + this.title + '</strong>' + this.description); 

我知道我可以只设立3个不同的infowindow.setContent功能,但我想知道是否有使用内嵌条件语句用一个函数来做到这一点的一种方式。

回答

1

你可以使用一个三元操作

infowindow.setContent('<strong>' + this.title + '</strong>' + 
    (this.description =='' ? ('<br/><a href="' + this.link + 
     '" target="_blank">Website</a>') : this.description)) ; 
+0

正是我一直在寻找,谢谢!在分号前缺少一个''',但是在添加分号后它会按需要工作。 – user13286

+1

@ user13286 ...很多谢谢..回答更新)分号前 – scaisEdge