我想停止默认浏览器操作CTRL+S并让我的 RIA 在用户为我们的应用程序按下此组合键时保存表单数据。
我们正在使用 ExtJS 4.1.x
此处使用 jQuery 的类似解决方案: Best cross-browser method to capture CTRL+S with JQuery?
我想停止默认浏览器操作CTRL+S并让我的 RIA 在用户为我们的应用程序按下此组合键时保存表单数据。
我们正在使用 ExtJS 4.1.x
此处使用 jQuery 的类似解决方案: Best cross-browser method to capture CTRL+S with JQuery?
这是我通常在 ExtJS 应用程序中执行此操作的方式(下面的最后一个案例声明),它似乎对我很有效:
// attach key navigation to document
Ext.getDoc().on('keypress', function(event, target) {
if (event.ctrlKey && !event.shiftKey) {
event.stopEvent();
switch(event.getKey()) {
case event.LEFT :
this.shiftTabs(-1);
break;
case event.RIGHT :
this.shiftTabs(1);
break;
case event.DELETE :
this.closeActiveTab();
break;
case event.F4 : // this is actually the "S" key
this.saveAll(); // handler
break;
// other cases...
}
}
});