谷歌地图,格式化字符串.(去掉撇号)

Google maps, formatting a string. (Removing apostrophes)

本文关键字:格式化 字符串 谷歌地图      更新时间:2023-09-26

我目前正在开发谷歌地图,我有这段代码将一些内容从CMS加载到标记中。

function showMarker(index) {
    infowindow.setContent("<div class='"map_marker'">" + markerData[index].content + "</div>");
    infowindow.open(map, markers[index]);
    map.panTo(markers[index].getPosition());
    showAttractionInfo(index);
}

然而,眼前的问题是,如果通过CMS输入撇号或引号,则会破坏地图,并且不会显示。

我需要一种方法来格式化markerData[index].content,然后再将其放入映射中,去掉撇号和引号。

我试过使用replace,但它对我根本不起作用。有什么建议吗?

编辑:

到目前为止,我已经尝试过这些解决方案:

infowindow.setContent("<div class='"map_marker'">" + markerData[index].content.replace(/'/g, '') + "</div>");

    var description = markerData[index].content;
    description.replace(/'/g, '');
    infowindow.setContent("<div class='"map_marker'">" + description + "</div>");

 var description = markerData[index].content;
            description.replace("'", "");
            infowindow.setContent("<div class='"map_marker'">" + markerData[index].content + "</div>");

var description = markerData[index].content;
            description.replace("'", "&#39;");
            infowindow.setContent("<div class='"map_marker'">" + markerData[index].content + "</div>");

var description = markerData[index].content;
            description.replace(/'/g, '&#39;');
            infowindow.setContent("<div class='"map_marker'">" + markerData[index].content + "</div>");

下面是一个标记数据(带撇号)的例子

72 Drymen’s Road,Bearden,Glasgow,G61 2RH

您需要将这些双引号转换为单引号。因为在你的产品线

infowindow.setContent("<div class='"map_marker'">" + markerData[index].content + "</div>");

您已使用双引号创建字符串。使用类似的东西:

var modified = markerData[index].content.replace(/"/g, "'");
infowindow.setContent("<div class='"map_marker'">" + modified + "</div>");

使用类似的东西:

   function htmlCodes(s) {
       return String(s).replace(/'/g, '&#39;');
   }

代码如下:http://www.tedmontgomery.com/tutorial/htmlchrc.html