Kendo UI地图中的MarkerClick事件

时间:2014-12-10 00:30:15

标签: javascript map kendo-ui

在我的.cshtml文件中,我有一个标题<h2 id="venueName"></h2>和一个带有MarkerClick事件的剑道地图,定义如下:

@(Html.Kendo().Map()
    .Name("map")
    .Center(-25.8671083, 133.6768307)
    .Zoom(4)
    .Layers(layers =>
        {
            ...
        })
    .Events(events => events
        .MarkerClick("onMarkerClicked")
    )
)

以下是活动的脚本

<script type="text/javascript">
    function onMarkerClicked(e) {
        $("#venueName").text("Venue 1");
    }
</script>

问题是:当我点击标记时,标题不会更改为Venue 1。我错了吗?

1 个答案:

答案 0 :(得分:2)

奇怪的是,当地图在html中定义时,剑道地图不提供“MarkerClick”事件。 在初始化地图后尝试绑定“MarkerClick”事件也不起作用。我使用了以下代码:

  var map = $("#map").data("kendoMap");
    map.bind("markerClick", function (e) {
        alert("assx");
    });

但是相同的代码适用于“zoomStart”之类的其他类型。

令人惊讶的是,如果地图是在javascript中定义的,则可以引发“MarkerClick”事件。即。

  $("#map").kendoMap({
            center: [30.268107, -97.744821],
            zoom: 3,
            markerClick: clicked,
            //other declarations..
    });

 function clicked(e){
    alert("assx");
    //$("#venueName").text("Venue 1") also works.
  }

这是我能找到的。 希望它有所帮助!