【发布时间】:2013-02-21 21:28:00
【问题描述】:
当用户执行以下操作之一时,从下拉列表框中获取所选项目值的最佳方法是什么;
在项目上按 Tab 键,
按回车键或
鼠标点击项目。
我是否必须为每个事件创建一个 javascript 事件处理程序,或者是否有一个很好的方法可以通过淘汰赛来做到这一点。
有什么好的 jsfiddle 示例我可以看看吗?
谢谢
【问题讨论】:
-
value绑定是最好的方法。
当用户执行以下操作之一时,从下拉列表框中获取所选项目值的最佳方法是什么;
在项目上按 Tab 键,
按回车键或
鼠标点击项目。
我是否必须为每个事件创建一个 javascript 事件处理程序,或者是否有一个很好的方法可以通过淘汰赛来做到这一点。
有什么好的 jsfiddle 示例我可以看看吗?
谢谢
【问题讨论】:
value 绑定是最好的方法。
您可以使用自定义绑定来捕获这些事件。
ko.bindingHandlers.tabEnterClick = {
init: function(element, valueAccessor) {
$(element).click(function() {
valuAccessor()();
}).keydown(function(event) {
if (event.which == 13 /*enter*/ || event.which == 9 /*tab*/) {
valuAccessor()();
}
}
}
};
但是,如果您只想从下拉列表中了解所选项目,value 绑定就可以了。
【讨论】: