动态设置 Kendo UI Slider 的最大值
Posted
技术标签:
【中文标题】动态设置 Kendo UI Slider 的最大值【英文标题】:Settings the max value on Kendo UI Slider dynamically 【发布时间】:2013-04-11 09:27:59 【问题描述】:我正在使用 Kendo UI 并创建了一个滑块。当我通过 Razor 创建滑块时,滑块的限制为 min16 max 80。
@(html.Kendo().Slider()
.Name("Age")
.Value(16)
.Min(18).Max(80).LargeStep(50).SmallStep(1).TickPlacement(SliderTickPlacement.None).ShowButtons(false)
.Events(
e => e.Change("AgeSliderChanged"))
)
但是,假设您在表单上选择了其他内容,这意味着最大值必须更改(即最大值下降到 50 而不是 80)。这在 javascript 中如何实现?
我习惯了 jQueryUI 库,所以你可以在哪里这样做:
$("#Age").slider("option","max", 50);
它会神奇地为您调整滑块的大小。
但是,我在剑道中尝试了类似的方法,但一无所获。在查看 Chrome Devtools 时,我发现了 options/max 设置:$("#Age").data("kendoSlider").options.max
如果我试试这个:
$("#d2cRequired").data("kendoSlider").options.max = 50
,它返回“50”并将 Kendo 滑块上的限制设置为 50(即,如果我将其设置为 51,它会跳回 50)
虽然这可行,但理想情况下我想知道您是否可以像 jqueryUI 一样调整滑块的大小? (这甚至是更改滑块最大限制的正确方法吗?!)他们的文档非常受欢迎,并且没有真正显示任何动态更改选项的示例(除了值设置)
我正在评估 Kendo 是否可能在公司中使用,如果他们的某些组件不能比 JQUI 等价物更好地工作,我不想花费数千美元!
【问题讨论】:
【参考方案1】:根据Kendo forum,我引用:
目前没有这样的功能可用。我建议 在Kendo's UserVoice 中提交您的请求,以便其他成员 社区可以对其进行评估、评论和投票。
您有几个选项,有多个滑块并显示您想要的一个或销毁滑块并重新创建它。
【讨论】:
是的,我最后选择了这个选项。我只需读取当前值,将其存储并重新创建一个新滑块,其中保留旧值和我想要的新更改。 还创建了一个 jsFiddle 来展示如何破坏和重新创建。 jsfiddle.net/rippo/MJMUZ以上是关于动态设置 Kendo UI Slider 的最大值的主要内容,如果未能解决你的问题,请参考以下文章
jQuery UI Slider - 最大值(不是滑块的结尾)
Kendo UI TreeView动态启用/禁用dragAndDrop事件