【发布时间】:2014-07-05 05:49:56
【问题描述】:
我有一些带有热键的 JSF 表单,例如,CTRL+S 将保存数据。
问题是,当按下组合键且焦点位于<p:selectOneMenu> 字段时,会选择第一个以S 开头的项目(如下示例),然后提交表单。
您可以在showcase 的第一个字段中重现此行为,按下 CTRL+O。至少在 Chrome 中,它会选择第一个选项,然后选择浏览器“打开对话框”。
我希望这个组件在按下特殊键时忽略该字母。
我已经针对SELECT html 元素和来自 jQuery UI 的“组合框”测试了这种行为,但它根本没有发生。 SelectOneMenu 的 Primefaces 实现是输入字段的不同包装器。
我在 PF 用户指南中列出的 onkeyup 和 onkeydown 属性中尝试了 return false。没有结果。
我还尝试使用preventDefault() 和return false 添加jQuery 键盘事件侦听器。什么都没有。
在深入研究 PrimeFaces 代码之前,我想知道是否有针对这种情况的已知解决方法。
【问题讨论】:
标签: javascript primefaces keyboard-shortcuts selectonemenu