2017-09-12 101 views
0

我正在使用Knockout-Kendo绑定。Knockout-Kendo:DropDown with Tooltip无法正常工作

我需要使用DropDownList与Tooltip,但在一个控件中使用这两个绑定不起作用。任何人都知道为什么以及如何解决它?

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

回答

0

要解决,在一个跨度包,并把工具提示上的跨度。

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

至于为什么,我的猜测是,剑道代理的输入项目,所以你的提示卷起被连接到隐藏的“真实”的输入,不可见的剑道下拉。

+0

是的,你是对的,只是发现它。 DropDown绑定创建更复杂的控件,并且必须将工具提示附加到创建的控件中的“包装器”对象。所以不可能使用2个绑定。因此,一种解决方案是在发布时包装原始输入,另一种方式是在DropDown呈现后动态创建工具提示。 – Raptor