У меня есть проект, который не был разработан мной. Технологии проекта: ASP.NET MVC, jQuery, Bootstrap и KendoUI. И у него есть небольшая проблема.
KendoComboBox автоматически дополняет текст текстом источника данных JSON, пока вы печатаете. Это потрясающе! Но если вы подпишетесь на событие DataBound для его обработки, это автозаполнение не будет работать правильно. Он стирает то, что вы печатаете. И это вызывает некоторую ярость у пользователей.
Это окно одинаково для создания нового реестра, а также для редактирования некоторого существующего реестра... Итак, подписанный DataBound выполняет работу по выбору одного элемента в поле со списком при редактировании.
И нормальное поведение ComboBox должно автоматически дополняться при вводе, если мы создаем новый.
Это Новое окно. Автозаполнение не работает с подпиской DataBound:
Это окно редактирования (то же самое, но загруженное).
Если я удалю DataBound, автозаполнение ComboBox будет работать нормально:
Это мой HTML:
<div class="k-field">
<div class="k-fieldlabel">Responsável:</div>
<div style="float: left; width: calc(100% - 100px);">
<input type="text" id="cboResponsavel" name="Responsavel.Id" style="width: 100%;" required validationmessage="Responsável é obrigatório" />
</div>
</div>
В моей функции document.ready у меня есть:
$("#cboResponsavel").kendoComboBox({
dataTextField: "Nome",
dataValueField: "Id",
dataSource: {
type: "json",
schema: {
data: "data",
total: "total"
},
transport: {
read: {
url: "/Projeto/Projetos/CarregarResponsaveis",
dataType: "json"
}
}
},
filter: "contains",
suggest: true,
dataBound:function(e){
e.sender.value(@(Model == null ? "null" : Model.Responsavel.Id.ToString()))
}
});
Мое исследование:
KendoCombobox не получает jsondata из локального источника
Демонстрации пользовательского интерфейса Kendo — ComboBox / Основное использование
Документация по пользовательскому интерфейсу Kendo - ComboBox - Events - DataBound
Выбор элемента в поле со списком с привязкой к данным
Я также просмотрел несколько сообщений на Kendo UI Forum.
Я обновил jQuery и KendoUI и все еще сохраняется...
Я новичок в KendoUI, и я только что исправил некоторые проекты ASP.NET MVC, поэтому пока не знаю, как решить эту проблему. Пожалуйста, если кто-то может помочь или дать мне направление, я буду благодарен.
О, да, я хочу исправить другие Комбо с той же проблемой...
P.S.: Если я выберу значение, нажав на него, я могу работать здесь, но это непродуктивно.
Надеюсь, я достаточно ясно выразился. Спасибо за любую помощь.
dataBound
, он будет работать нормально, но вы пытались оставить его там, но пустым? Вы проверили, что такое сгенерированный код JS (я имею в виду, убедитесь, чтоe.sender.value...
выглядит так, как вы ожидали. Попробуйте также вызватьe.sender.value("some literal")
в dataBound и посмотрите, работает ли это. - person OnaBai   schedule 28.03.2014