剑道 UI 地图中的标记单击事件

MarkerClick event in Kendo UI map

本文关键字:单击 事件 UI 地图 剑道      更新时间:2023-09-26

在我的.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 .我在某个地方错了吗?

奇怪的

是,当地图在html中定义时,剑道地图不提供"标记点击"事件。在映射初始化后尝试绑定"标记点击"事件也不起作用。我使用了以下代码:

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

但是相同的代码适用于其他 enevts,如"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.
  }

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