作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在我的 XPage 应用程序中,我注意到每当我按下退格键(没有焦点的输入字段)时,应用程序都会返回到上一个 XPage。我怎样才能禁用这种行为?我相信这可以通过 JQuery 和/或 Dojo 实现,但不确定如何将代码添加到 XPage?另外,阻止这种行为会对性能产生影响吗?
最佳答案
我使用以下代码解决了这个问题(在我将 jquery 添加到 WEB-INF 文件夹之后):
<script type="text/javascript" src="js/jquery-1.10.2.min.js"></script>
<xp:eventHandler event="onClientLoad" submit="false">
<xp:this.script><![CDATA[
$(document).keypress(function(e) {
var elid = $(document.activeElement).is("input, textarea") ;
if (e.keyCode === 8 && !elid) {
if(e.ctrlKey) {
window.history.back()
}
else {
alert("Navigating with Backspace has been disabled. Use CTRL + Backspace if you want to go back to the previous page (and lose any unsaved changes).");
return false;
}
}
});
]]></xp:this.script>
</xp:eventHandler>
如果在道场中也能有一个解决方案就好了!
编辑:这是此解决方案的道场版本 -
dojo.addOnLoad( function(){dojo.connect( document, 'keypress', function(e){
var activeElementId = document.activeElement.tagName;
if(e.keyCode === 8 && activeElementId != "INPUT" && activeElementId != "TEXTAREA"){
if(e.ctrlKey) {
window.history.back()
}
else {
alert(messageValue);
dojo.stopEvent(e);
}
} });
});
关于jquery - 防止退格按钮导航回上一个 XPage,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28760520/
我是一名优秀的程序员,十分优秀!