kendo ui combobox数据值更改参数不起作用

时间:2012-11-29 16:53:41

标签: mvvm combobox kendo-ui

我正在使用Kendo UI并使用声明性绑定来绑定表单上的元素。它使用组合框小部件来搜索选项列表。窗口小部件实际上按预期执行,但只有在值发生更改时才会请求搜索(这很有意义)。我遇到的问题是更改事件仅在用户模糊组合框时触发(例如,通过在输入外部单击)。

由于在模糊之后触发了DOM更改事件,这是预期的,但Kendo UI docs state通过使用'data-value-update'参数,您可以指定要在'keyup'上触发的事件。 / p>

不幸的是我不能让它工作,这是组合框HTML

<input data-role='combobox' data-bind="value: comboBoxValue, events: { change: methodToDoSearch}" data-value-update="keyup" type="text" data-text-field='Text' data-value-field='Id' />

这是作为kendo ui模板的一部分创建的(尽管我已经在模板之外进行了测试,所以这不应该有所作为)

提前致谢。

2 个答案:

答案 0 :(得分:0)

仅支持vanilla文本框(data-value-update<input type="text" />属性。只有当它失去焦点时,Kendo ComboBox才会引发其变化事件。

答案 1 :(得分:0)

具体来说,数据值更新仅用于更新应用窗口小部件的绑定对象(当您在窗口小部件中输入内容时,observable将使用给定事件的值进行更新。在这种情况下,keyup )。

I.E。,因为组合框小部件只能设置为组合框数据源值之一,所以observable绑定到临时非组合框值是没有意义的。

我没试过这个,但你可以通过事件绑定绑定什么事件? Kendo演示显示鼠标悬停,点击等。也许尝试这样的事情:

<input data-role='combobox' data-bind="value: comboBoxValue, events: { change: methodToDoSearch, keyup: methodToDoSearch}" type="text" data-text-field='Text' data-value-field='Id' />

一般情况下,你想在keyup上发生什么事?如果您想进行一些手动搜索以更改keyup上组合框的数据源,那就是我要查看的内容。