因此,我目前就业地点的中小企业想要尝试禁用某些页面的后退按钮.我们有一个页面,用户进行一些选择并提交它们进行处理.在某些情况下,他们必须在另一页上输入评论.
用户已经想到的是,如果他们提交信息并转到带有评论的页面,则不必输入评论,然后点击后退按钮返回上一页.
我知道有几种不同的解决方案(其中许多解决方案比禁用后退按钮更优雅),但这就是我留下的.是否可以通过改变后退按钮的行为来阻止某人返回上一页.(比如提交 - >返回错误的排序).
由于双重发布信息,我不能让它返回上一页然后转移到当前页面.我只能直接离开当前页面.我用谷歌搜索它,但我只看到帖子说它将永远返回上一页.我希望有人有一些疯狂的功夫技能可以使这成为可能.
我知道每个人都说这是一个坏主意,我同意,但有时候你只需要做你所说的.
问题是:点击浏览器后退按钮会发生什么 - >打开一个已经销毁了viewscoped-managedbean的页面 - >从该页面的commandButton提交一个带有网格记录选择的请求?
我的期望:重新创建关联的viewscope-managebean,接收网格记录选择,并处理它们,就像从不涉及浏览器后退按钮一样.
我的经验:相关的viewscope-managebean不会重新创建,也不会接收网格记录选择.必须重新输入URL,或者在点击浏览器后退按钮后重新输入F5才能再次正常工作.
所以这是成功的场景,所有的bean都是视图编组的bean:
现在,这是涉及浏览器后退按钮的错误情况(从#6开始发生的不同事情):
是否可以使用带有浏览器后退按钮的viewscope-beans获得正常体验(就像没有浏览器后退按钮一样)?
这是我的依赖:
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.faces</artifactId>
<version>2.1.3</version>
<scope>compile</scope>
</dependency>
Run Code Online (Sandbox Code Playgroud)
请分享您的想法!
我有一个页面,其中有几个搜索/过滤按钮,当点击时,通过AJAX刷新下面列表的内容.
在这个过程中,我正在修改历史记录(通过pushstate),以便新的过滤页面可以添加书签,因此后退按钮可以正常工作.我也在听popstate事件,对Back做出反应.
我的代码看起来或多或少像这样:
window.addEventListener("popstate", function(ev) {
if (!window.history_ready) { return; } // Avoid the one time it runs on load
refreshFilter(window.location.href, true);
});
refreshFilter: function(newURL, backButtonPressed){
$.ajax({ url: newURL}).done( blah );
if (!backButtonPressed) {
window.history_ready = true;
history.pushState(null, null, newURL);
}
}
Run Code Online (Sandbox Code Playgroud)
除了一个奇怪的案例外,这种方法效果很好......
至少在最新的Chrome中
为什么会发生这种情况,我该如何避免呢?
我创建了Android app使用cordova 2.6.0.我已经menu在我的应用程序中使用html标记实现了一项功能,并jQuery在与设备进行交互时切换menubutton.但我无法想出达到以下要求,表现得像本机应用程序.
需求
如果是,menu应隐藏在按下设备上.如果不可见,那么现在应该正常行动,也就是它应该是或应该去.backbuttonmenuvisiblemenubackbuttonexitappback history
这是我的代码
document.addEventListener('deviceready', function(){
document.addEventListener('menubutton', function(){
//Toggle Menu
//Which is working fine
});
document.addEventListener('backbutton', function(){
if(menu is visible) {
//Hide the menu
//This is also working fine
return false;
}
//BUT the default action of backbutton has gone. It cannot exit the app , neither it brings to back history.
//return true;
//I …Run Code Online (Sandbox Code Playgroud) 如何实现一个后退按钮作为一个普遍适用的命令按钮?使用后退按钮我不是指浏览器按钮,而是位于页面某处的按钮.并不总是可以使用Post-redirect-get模式.
在按钮应该指向的每个单元上传递信息是非常不可靠的.
可能是导航规则的保留关键字指向应用的上一个导航规则?
当点击UINavigationBar的后退按钮(由UINavigationController控制)时,如何弹出UIAlertView?在某些情况下,我想问用户"你确定吗?" 问题类型,以便他可以中止操作并保持当前视图或弹出导航堆栈并转到父视图.
我发现最吸引人的方法是在UINavigationBar的Delegate上覆盖ShouldPopItem().
现在,这里有一个非常相似的问题:iphone navigationController:在退出当前视图之前等待uialertview响应
还有一些类似性质的其他问题,例如: 检查UIViewController是否即将从导航堆栈中弹出? 以及如何判断在UINavigationControllerStack中按下后退按钮的时间
所有这些状态"子类UINavigationController"作为可能的答案.
然后有一个读取像子类UINavigationController一般不是一个好主意: Monotouch:UINavigationController,覆盖initWithRootViewController
在苹果的文档也说的UINavigationController不打算被继承.
其他一些人声称在使用UINavigationController时甚至不能覆盖ShouldPopItem(),因为它不允许将自定义/子类UINavigationBarDelegate分配给UINavigationBar.
我的子类化尝试都没有工作,我的自定义代表没有被接受.
我还在某处读过可能在我的自定义UINavigationController中实现ShouldPopItem(),因为它将自己指定为其UINavigationBar的Delegate.
没什么好吃的,这没用.UINavigationController的子类如何知道属于UINavigationBarDelegate的Methods.它被拒绝:"找不到合适的方法来覆盖".删除已编译的"override"关键字,但完全忽略该方法(如预期的那样).我认为,使用Obj-C可以实现几个协议(类似于C#AFAIK中的接口)来实现这一点.不幸的是,UINavigationBarDelegate不是一个接口而是MonoTouch中的一个类,所以这似乎是不可能的.
我在这里很丢失.当UINavigationBar由UINavigationController控制时,如何在UINavigationBar的Delegate上覆盖ShouldPopItem()?或者有没有其他方法可以弹出UIAlertView并在可能弹出导航堆栈之前等待它的结果?
back-button uinavigationbar uinavigationcontroller xamarin.ios
我想在导航控制器中单击后退按钮时保存数据库.
所以我会在方法中插入代码.
在导航控制器中单击后退按钮时调用的方法是什么?
我想在我的应用程序中实现后退按钮功能.在应用程序中,只要我点击中间的后退按钮,我的控件就会直接登录页面,那么有人可以告诉我在哪里覆盖onKeyDown()或onBackPressed()方法吗?
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
Log.e("back key pressed","Back key pressed");
return true;
}
return super.onKeyDown(keyCode, event);
}
Run Code Online (Sandbox Code Playgroud)
因为我正在写这个内部onCreate和外面onCreate也,但它不工作......
我正在使用spring MVC框架工作开发Web应用程序,我想限制用户在使用我的Web应用程序时使用浏览器返回按钮.我该怎么办spring?是否有内置功能spring?
我正在使用Angular 2开发一个网站.有没有办法使用Angular 2禁用或触发浏览器后退按钮?
谢谢
back-button ×10
javascript ×3
android ×2
navigation ×2
angular ×1
browser ×1
controller ×1
cordova ×1
html5 ×1
ios ×1
java ×1
jquery ×1
jsf ×1
jsf-2 ×1
spring-mvc ×1
xamarin.ios ×1
xcode ×1