javascript - kendo toolTip 事件未定义
问题描述
我正在尝试添加一个工具提示来获取一些信息,但是,我在让它工作时遇到了一些麻烦。当我尝试添加 RequestStart 事件或任何事件时,我收到一条错误消息,显示
"Uncaught ReferenceError: ShipScheduleDsTooltip_RequestStart is not defined"
我不知道为什么它不允许这个代码。我在几个不同的地方有几乎完全相同的代码。这是收到错误的代码。
@(Html.Kendo().Tooltip()
.For("#ShipSchedule-wrapper")
.Filter(".ShipSchedule-jobs-wrapper")
.LoadContentFrom("DesignSetTooltip", "ProductionOverview")
//.Content("toolTipTestContent")
.Position(TooltipPosition.Left)
.AutoHide(false)
.Width(600)
//.Height(300)
.ShowOn(TooltipShowOnEvent.Click)
.Events(events => events.RequestStart("ShipScheduleDsTooltip_RequestStart"))
//.Events(events => events.Show("onTap"))
)
这是 ShipScheduleDsTooltip_RequestStart
function ShipScheduleDsTooltip_RequestStart(e) {
e.options.data = {
designSetId: e.target.data("designSetId")
}
}
因此,如果有人有任何想法,我将不胜感激。
编辑 可能是我在函数中添加的 id 上设置了工具提示 .For 和 .Filter 吗?
解决方案
您的小部件在函数之前呈现。请参阅延迟的剑道基础。
更改您的小部件:
@(Html.Kendo().Tooltip()
.For("#ShipSchedule-wrapper")
.Filter(".ShipSchedule-jobs-wrapper")
.LoadContentFrom("DesignSetTooltip", "ProductionOverview")
.Position(TooltipPosition.Left)
.AutoHide(false)
.Width(600)
.ShowOn(TooltipShowOnEvent.Click)
.Events(events => events.RequestStart("ShipScheduleDsTooltip_RequestStart"))
.Deferred() // Defer script gen to below
)
然后在底部的脚本标签中:
<script type="text/javascript">
function ShipScheduleDsTooltip_RequestStart(e) {
e.options.data = {
designSetId: e.target.data("designSetId")
}
}
@Html.Kendo().DeferredScripts(false) // Render the widget js here after the function
</script>
推荐阅读
- javascript - 使用模板变量作为脚本 src 的一部分
- html5-video - html5视频如何处理文本轨道?
- android - 有没有办法将我的文档 ID 与 toObject 映射?
- testing - 使用元运算符进行测试不会打印测试描述
- python - Pytorch cuda get_device_name 和 current_device() 挂起并被杀死?
- javascript - 根据对象的其他属性从对象数组中的对象数组中获取属性的“val”
- sql - 如何在当前日期和下一个日期之间进行日期差异?
- python - 从 Pandas DataFrame 就地排序行
- c++ - C ++试图通过getline函数为函数调用获取用户输入值
- functional-programming - 将字符串解析为元组列表