点击标记和JVectorMap

3
我正在尝试使用JVectorMap创建一个地图,当用户点击给定的标记时(例如,如果用户点击标记为阿拉斯加的标记),它将向#output div输出信息。在这里的其他地方,我看到了这个代码示例,它输出标签的名称...
onMarkerLabelShow: function(event, label, code) {
    $("#output").html("Some information about "+ label.html());
}

我在这里尝试使用一个开关...

onMarkerLabelShow: function(event, label, code) {
    switch (label) {
        case Alaska:
        $("#output").html($("#alaska-facts");
        [break;]

        case North Carolina:
        $("#output").html($("#nc-facts");
        [break;]

        default:
        $("#output").html("Please select a job site");
        [break;]
    }
}

当我运行这段代码时,地图没有显示出来,而且可能完全偏离了正确的方向。有人能帮忙吗?

1个回答

2
一些问题:
- `label` 是一个对象,不能匹配字符串值的简单 `case` 语句。您可能希望对 `label.text()` 进行评估。 - `case` 中的值应为带引号的字符串(例如 `"North Carolina"`,而不是 `North Carolina`)。 - `break;` 不应被包含在 `[]` 中(您不想要 `break` 的数组,您想要退出 `switch` )。 - 您忘记了为设置 jQuery ID 选择器的 `.html()` 添加关闭的 `)`。
纠正后的示例:
onRegionLabelShow: function(event, label, code) {
   switch (label.text()) {
      case "Alaska":
         $("#output").html($("#alaska-facts"));
         break;

      case "North Carolina":
         $("#output").html($("#nc-facts"));
         break;

      default:
         $("#output").html("Please select a job site");
         break;
   }
}

太好了!感谢您指引我正确的方向! - wbprice

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接