2016-09-30 2 views
0

Мы используем интерфейс Kendo UI через оболочки MVC. Вот как мы создаем MULTISELECT:Как изменить параметр конфигурации в пользовательском интерфейсе Kendo ASP.Net MVC

@(Html.Kendo().MultiSelect() 
       .Name("filterUsers") 
       .DataTextField("Text") 
       .DataValueField("Value") 
       .Placeholder("Select users...")... 

Проблема заключается в том, что в новой версии Кендо UI есть опция clearButton, которая не имеет обертки в MVC.

Как мы можем установить его, продолжая использовать обертки MVC? Я пробовал:

1) атрибуты данных (data-clear-button), но он не работает, так как он требует, чтобы все параметры должны быть определены с помощью атрибутов и виджет должен быть создан с помощью kendo.Bind

2) изменение конфигурации с помощью setOptions, который не работает:

$(function() { 
    var s = $("#multiselect").data('kendoMultiSelect'); 
    s.setOptions({clearButton: false}); 
}); 

Любые предложения?

+1

Вы действительно хотите найти собственное решение? Потому что это * hack * '$ ($ (" # multiselect "). Data (" kendoMultiSelect "). Wrapper) .find (". Ki-close "). Css (" display "," none ")', кажется, работает хорошо. – DontVoteMeDown

+0

Я был уверен, что собственное решение существует, но, оказывается, это не так. Я на самом деле упомянул ClearButton как хороший пример, похоже, мне нужно найти хаки для других опций, а также – Shaddix

ответ

2

Внушение DontVoteMeDown может работать на конкретных MultiSelects, но нуждается в модификации:

$("#multiselect").data("kendoMultiSelect").wrapper 
    .find(".k-multiselect-wrap > .k-i-close").css("display", "none"); 

В противном случае предлагалось ранее осуществление также скрыть кнопки закрытия для любых заранее выбранных элементов.

Если вы хотите предназначаться все MultiSelects, а затем использовать один из следующих вместо:

CSS

.k-multiselect-wrap > .k-i-close { 
    visibility: hidden; 
} 

или

JavaScript

// execute this before any MultiSelects are initialized 
kendo.ui.MultiSelect.fn.options.clearButton = false; 
+1

Кажется, я мог бы использовать 'kendo. ui.MultiSelect.fn.options.clearButton = false; 'перед созданием select и верните его в' true' после создания. Это все еще хак, но самый чистый до сих пор :) – Shaddix

 Смежные вопросы

  • Нет связанных вопросов^_^