用户按下后退按钮时的AngularJS
AngularJS when user presses back button
我到处找了一遍,似乎找不到一个简单明了的答案。基本上,我在搜索/筛选字段方面遇到了问题,用户输入文本,它会过滤该页面。过滤器适用于每一页。
现在,当他们按下任何导航项时,都会清除搜索文本/型号值。为此,我不得不手动启动onclick事件并创建一个函数。
我的问题是,当用户按下浏览器的"后退按钮"时,输入文本不会被清除。
有没有像这样的简单事件
if(usersPressedBackButton){
//Do stuff
}
将此代码添加到控制器中:
$scope.$on('$locationChangeStart', function(event, next, current) {
if ($scope.yourinputfield.$dirty) {
$scope.yourinputfield = "";
$scope.yourinputfield.$setPristine();
}
});
没有人能对此给出明确的答案,所以我创建了自己的答案。
我创建了一个布尔值,当用户从另一个页面搜索时检测到它。
父控制器:
$scope.searchFilterText = '';
$scope.fromSearchClick = false;
$scope.$on('$locationChangeStart', function()
{
if(!$scope.fromSearchClick){
$scope.clearFilterSearchText();
}
$scope.fromSearchClick = false;
});
子控制器-或者您不希望/确实希望清除搜索的页面。
//In any function
$scope.$parent.fromSearchClick = true;
相关文章:
- 点击Angularjs中的按钮上传文件
- Angularjs无法将单选按钮与嵌套范围内的模型绑定
- 如何使用AngularJS显示按钮或锚标记值
- 如何为AngularJS制作智能表中第一页和最后一页的跳过按钮
- 使用AngularJS停用引导导航栏按钮
- 使用Javascript或AngularJS控制或禁用浏览器返回按钮
- jquery fancybox+angularJS:fancybox按钮动作问题
- 如何在angularjs中点击按钮重置模型
- AngularJS中没有选择多个单选按钮
- 在AngularJS中向控制器发送多个随机单选按钮值
- AngularJS按钮文本不起作用
- 打开带有 angularjs 按钮的页面
- AngularJs按钮失去作用域
- Angularjs按钮禁用无法正常工作
- AngularJS按钮点击不起作用
- 只使用javascript和元素点击angularjs按钮
- AngularJS按钮加载状态不起作用
- 点击[angularjs]按钮更改收音机型号
- AngularJS按钮点击不触发功能
- 在动态AngularJS按钮上添加Google事件跟踪代码