TLDR:如何在jsbin链接的条件下正确响应value()? http://jsbin.com/pikoye/edit
我正在使用Kendo UI的ComboBox并且遇到了一个我希望有人可以帮助我的边缘案例。我使用组合框作为显示MRU命令列表的方法。通过下面描述的步骤,如果用户选择了一个命令,但随后改变主意或编辑它,结果值()仍然具有所选项目的值。
我尝试过其他按键事件试图改变时间,但没有任何运气。它发生在IE11,Chrome和Firefox中。我也尝试过不同版本的KendoUI。我们希望能够让用户按[enter]提交他们的选择,这样就必须留下来。我的解决方案是使用text()值,它现在可以使用,但似乎值()应该有效。
更新:我想要的是Value()返回'something'而不是之前选择的索引。我可以将Text()与索引的文本值进行比较,但似乎是不必要的比较。要查看我希望看到的值,请单击“自定义”按钮。
答案 0 :(得分:0)
我已为您提供了这个jsbin的可能解决方案http://jsbin.com/vupagekizu/1/
希望我明白你的目标是什么。
基本上我所做的就是在你的组合框中添加一个Select事件,检查所选项目的索引是否大于-1,即列表中的项目,如果是,则系统将其存储在您可以访问的全局变量。为了获得项目的所有属性,我选择了与所选项目关联的dataItem。
var selectedValue = null;
select: function(e)
{
if(e.item.index() > -1)
{
selectedValue = this.dataItem(e.item.index());
alert(selectedValue);
}
else
{
//do nothing.
}
}