Telerik UI DropDownList не выбирает элемент автоматически - PullRequest
0 голосов
/ 18 февраля 2019

Я использую DropDownList «Пользовательский интерфейс Telerik для ASP.NET Core».Источник данных запрашивает список элементов SelectItems, где один из элементов имеет значение Selected в true.Я предполагаю, что правильное поведение будет для элемента, который будет выбран автоматически, но это не так.

Раскрывающийся список:

                @(Html.Kendo().DropDownList()
                            .Name("CategoryId")
                            .DataSource(ds => ds.Read(read => read.Action("GetQuestionCategories", "Questions").Data("getParentCategoryId")).ServerFiltering(true))
                            .DataValueField("Value")
                            .DataTextField("Text")
                            .Events(events => events.Change("reloadLearningObjectives"))
                            .HtmlAttributes(new { @class = "form-control wide-full" })
                )

Текст json, который он запрашивает: [{"Disabled":false,"Group":null,"Selected":false,"Text":"Algemeen","Value":"62357618-ac53-4092-86d1-6c583b286bbe"},{"Disabled":false,"Group":null,"Selected":false,"Text":"Ballonvaren","Value":"9489c310-7549-45c7-a518-43f8016b2c3b"},{"Disabled":false,"Group":null,"Selected":false,"Text":"Paramotor","Value":"78d1a658-93f1-4eca-8b75-ad4bd4d33ef1"},{"Disabled":false,"Group":null,"Selected":false,"Text":"Part 66","Value":"b7b5845a-e2e0-45be-ad55-002180f8360b"},{"Disabled":false,"Group":null,"Selected":false,"Text":"ROC-Light","Value":"84ddea95-bda6-46b3-9660-2383d46033a0"},{"Disabled":false,"Group":null,"Selected":true,"Text":"Zweefvliegen","Value":"7367e8ff-d4a6-4766-b6b8-59f24f6e7b08"}]

Как вы видите, последний элемент имеет значение "Выбрано" до true, но когда страница загружена, она все равно говорит, что элемент должен быть выбран.

1 Ответ

0 голосов
/ 19 февраля 2019

Вы можете использовать событие dataBound и установить значение виджета там, используя метод value (), пример ссылочного кода:

https://www.telerik.com/forums/dropdownlist-mvc---set-default-value-at-runtime#BV2tUQaLKkaPPOq5WaA9FQ

Таким образом, вы можетеПопробуйте изменить приведенный выше пример кода для удовлетворения ваших требований:

dataBound: function(e) {
  // handle the event
 $.each(e.sender.dataSource._data, function (key, value) {
               if(value.Selected==true){
               e.sender.value(value.Value);
               }
            });

},
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...