Knockout-Kendo: DropDown с всплывающей подсказкой не работает

Я использую крепления Knockout-Kendo.

Мне нужно использовать DropDownList с подсказкой, но использование обеих привязок в одном элементе управления не работает. Кто-нибудь знает, почему и как это исправить?

var ViewModel = function() 
{
   this.choices = ko.observableArray(["apple", "orange", "banana"]);
   this.selectedChoice = ko.observable();
   this.tipText = "I am a tooltip!";
};

ko.applyBindings(new ViewModel());

<input 
    data-bind="kendoDropDownList: { data: choices, value: selectedChoice }, 
               kendoTooltip: { content: tipText }" />

https://codepen.io/raptor/pen/dVbrPM


person Raptor    schedule 12.09.2017    source источник


Ответы (1)


Чтобы исправить, оберните его в пролет и поместите всплывающую подсказку на пролет.

<span data-bind="kendoTooltip: { content: tipText }"><input data-bind="kendoDropDownList: { data: choices, value: selectedChoice }" /></span>

Что касается того, почему, я предполагаю, что кендо проксирует элемент ввода, поэтому ваша всплывающая подсказка оказывается привязанной к скрытому «реальному» вводу, а не к видимому раскрывающемуся списку кендо.

person Roy J    schedule 12.09.2017
comment
Да, вы правы, тоже только что нашел. Привязка DropDown создает более сложный элемент управления, и всплывающая подсказка должна быть прикреплена к объекту-оболочке в созданном элементе управления. Таким образом, невозможно использовать 2 привязки. Таким образом, одно решение - обернуть исходный ввод, как вы опубликовали, а другой способ - динамическое создание всплывающей подсказки после рендеринга DropDown. - person Raptor; 12.09.2017