Javascript 在AngularJS中单击按钮打开新选项卡 新建选项卡 openTab=函数(){ $http.post('www.google.com'); }
我想要的是发布一个require,并在单击“openTab”按钮时在新选项卡中打开响应html。没有使用Javascript 在AngularJS中单击按钮打开新选项卡 新建选项卡 openTab=函数(){ $http.post('www.google.com'); },javascript,angularjs,Javascript,Angularjs,我想要的是发布一个require,并在单击“openTab”按钮时在新选项卡中打开响应html。没有使用$http执行此操作的方法。 我认为这可能很简单,但我找不到办法。您应该使用$location服务 角度文档: 我这样解决了这个问题 <button type="button" class="btn btn-primary" ng-click="openTab()">new tab</button> openTab = function () { $http
$http
执行此操作的方法。
我认为这可能很简单,但我找不到办法。您应该使用
$location
服务
角度文档:
- 我这样解决了这个问题
<button type="button" class="btn btn-primary" ng-click="openTab()">new tab</button>
openTab = function () {
$http.post('www.google.com');
}
$scope.openTab=函数(){
$scope.url='www.google.com';
}
您可以通过使用$window服务在控制器内完成这一切$窗口是全局浏览器对象窗口的包装器
要使此工作正常,请按如下方式向控制器中注入$window
<a class="btn btn-primary" target="_blank" ng-href="{{url}}" ng-mousedown="openTab()">newTab</a>
$scope.openTab = function() {
$scope.url = 'www.google.com';
}
当重定向到动态路由时,这种方法很有效正确的HTML方式:
只需在按钮周围添加锚元素并添加属性target=“\u blank”。就这么简单:
.controller('exampleCtrl', ['$scope', '$window',
function($scope, $window) {
$scope.redirectToGoogle = function(){
$window.open('https://www.google.com', '_blank');
};
}
]);
你能接受这个解决方案吗?我投票支持@Aaron one:)Chrome锁定了这个弹出窗口。。我如何才能识别它被锁定并通知用户?在chrome和firefox中工作正常,但在IE中,用户获得loggedout并重定向到登录页面。是否有解决问题的方法,因为IElocation不允许您打开新选项卡。此技巧非常好,特别是对于那些正在处理Chrome的安全性可以锁定手动脚本打开的新标签页的人来说。
<a ng-href="{{yourDynamicURL}}" target="_blank">
<h1>Open me in new Tab</h1>
</a>
$scope.yourDynamicURL = 'https://stackoverflow.com';