Я довольно новичок в kendo и столкнулся с проблемой с kendo dropDownList.
У меня есть список каналов kendo dropDown в моей всплывающей форме Add / Edit. И каждый раз, когда я сохраняю свою форму и нажимаю на новую кнопку «Добавить / редактировать», я хочу, чтобы сохраненное имя канала было в этом dropDownList. Я вызываю данные dropDown от SP, а затем заполняю этот DropDown.
Вот мой кендо DropDown:
function buildChannelDropDown(){
$('#ddlChannelSelect').kendoDropDownList({
dataTextField: 'Text',
dataValueField: 'Value',
optionLabel: "Select Main Station",
dataBound: function(e){
if(!onDataBound_SelectByDefaultIfOnlyOneItem(e)) {
var dropdownlist = $("#ddlChannelSelect").data("kendoDropDownList");
var mainChannelDataSource = dropdownlist.dataSource;
if(mainChannelDataSource._data.length > 0){
dropdownlist.select(0);
}
}
},
change: function(){
var selectedChannel = 0;
if($('#ddlChannelSelect').val() != ""){
selectedChannel = $('#ddlChannelSelect').val()
}
GetDataForSelectedChannel(selectedChannel);
},
filter: 'contains'
});
}
И эта моя функция, которая приносит весь список каналов из бэкэнда
function setChannelDropDown(){
var paramObj = {
ChannelGroupId = $("#ddlChannelGroup").val();
}
InvokeAjaxMethod('/Channel/GetChannelList', 'Get', true, paramObj, function(response){
var channelDropDown = $('#ddlChannelSelect').data('kendoDropDownList');
channelDropDown.setDataSource(response.Data);
});}
Я вызываю функцию setChannelDropDown () при нажатии кнопки Добавить / Редактировать. Все работает нормально, и недавно добавленный канал отображается в dropDown. За исключением случаев поиска / ввода в поле «Фильтр» в раскрывающемся меню (я сохранил форму: «содержит»). Когда я ищу и выбираю опцию и сохраняю форму, всплывающая форма закрывается, но открывается DropDown. См. Это изображение.
Вот как это выглядит
Этот DropDown открывается в сетке после сохранения и закрытия формы. После отладки стало известно, что dataBound снова получает удар. Это происходит только тогда, когда я печатаю в поле фильтра и сохраняю. Кто-нибудь знает, что я могу решить эту проблему и предотвратить это?