我的另一个问题。标题基本上是这样说的,但我想知道在使用kendo DropDownList时,函数onSelect
和onClose
之间的真正的差异是什么。我当然会阅读Kendo Documentation,但我并不清楚onSelect
和onClose
之间的实际差异。我不能100%确定这是否是一个问题,但我仍然会问它,因为我希望有人照亮我。那么,这两个函数的使用有何不同?
其他看到的链接:
提前致谢。
答案 0 :(得分:2)
首先要注意的是触发事件的顺序。如demo here中所示,首先触发select
事件,然后触发change
,然后触发close
事件。
select
事件 select
(注意:不是以编程方式选择的)。并且,除了在事件参数中传递e.sender
之外,它还是触发事件的DropDownList实例,它还传递e.item
,这是所选的<li>
项。然后,您可以使用它来获取该项目的模型,方法是将e.item.index()
传递给DropDownList中的.dataItem()
方法,即:
$("#list").data("kendoDropDownList").dataItem(e.item.index());
有关此方法行为的注意事项是,即使您再次选择当前选定的项目,它也会触发。如果您不断选择相同的项目,它将继续触发select方法。
change
事件change
。它与select
方法的不同之处在于e.sender
是在事件参数中传递的唯一参数,因此没有内置的方法来查看未经挖掘选择的项目进入e.sender
对象中的方法和项目。
close
事件 close
,即使未选择任何内容。与change
事件类似,事件参数中传递的唯一参数是e.sender
。此方法的目的是在您希望在列表关闭时触发某些行为的情况。
答案 1 :(得分:0)
您可以获得有关选择的角度样式反馈,如下所示:
var $disDeskSel2 = $("#disDeskSel2");
function onSelectTwo(e) {
var dataItem = this.dataItem(e.item.index());
$("#displayNextSelection").html('<p>You age: ' + dataItem.text + '</p>');
$disDeskSel2.html('<p><span class="label label-primary">Based on your selection </span> You age: ' + dataItem.text + '</p>')
.hide();
}