2013-04-18 43 views
3

我在玩Kendo UI並創建了一個滑塊。當我通過Razor創建滑塊時,滑塊的極限值爲min16 max 80。動態設置Kendo UI Slider的最大值

@(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我發現選項/ MAX設置:$("#Age").data("kendoSlider").options.max

如果我試試這個: $("#d2cRequired").data("kendoSlider").options.max = 50,則返回「50」,並設置在劍道滑塊限制到50(即如果我將其設置爲51之跳回到50) 雖然這個工程,理想情況下,我想知道你是否可以調整滑塊像jqueryUI? (這是甚至正確的方式來改變滑塊的最大限制?!)他們的文檔是非常受歡迎和錯過,並沒有真正顯示動態更改選項的任何示例(除了值設置)

我是評估Kendo作爲公司可能的用途,並且如果某些組件的功能不如JQUI等效,那麼它們不希望花費數千美元。

回答

5

按照Kendo forum,我引述:

目前沒有可用的這樣的功能。我建議 在Kendo's UserVoice提交您的請求,所以 社區的其他成員可以評估,評論和投票。

你有幾個選擇,有多個滑塊並顯示你想要的或者銷燬滑塊並重新創建它。

+0

是的,我最終選擇了這個選項。我只是讀取當前值,存儲它並重新創建一個新的滑塊,並保留舊值並更新我想要的值。 – JustAnotherDeveloper

+4

也創建了一個jsFiddle來展示你如何去創造和再創造。 http://jsfiddle.net/rippo/MJMUZ/ – Rippo