Раньше у меня было 2 ссылки, по которым пользователь может щелкнуть и связать их с другой страницей, но теперь я хотел бы иметь список опций, где пользователь также может выбирать и связывать их. Как я могу этого добиться? Я делал это раньше этим методом
<a ng-href = "LINK" ng-click = "getKML(selectedTheme)" target = "_blank" download>KML</a>
<a ng-href = "LINK" ng-click = "getSHP(selectedTheme)" target = "_blank" download>KML</a>
Но теперь я хотел бы иметь список опций, чтобы сделать то же самое, как я могу этого добиться?
angular.module('MyApp', ['ngMaterial', 'ngMessages', 'material.svgAssetsCache'])
.controller('AppCtrl', function($scope, $mdDialog) {
$scope.downloadFormat = ["a", "b"];
});<!DOCTYPE html>
<html lang = "en">
<head>
<meta charset = "UTF-8">
<title>angular Js Modal popup</title>
<link rel = "stylesheet" href = "https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css">
<link rel='stylesheet' href='https://cdn.gitcdn.link/cdn/angular/bower-material/v1.1.1/angular-material.css'>
<link rel='stylesheet' href='https://material.angularjs.org/1.1.1/docs.css'>
<link rel = "stylesheet" href = "css/style.css">
</head>
<body ng-controller = "AppCtrl" ng-app = "MyApp">
<select ng-model = "selectedFormat" ng-options = "x for x in downloadFormat">
</select>
<button ng-click = "lalalu(selectedFormat)">Download</button>
<!--
Copyright 2016 Google Inc. All Rights Reserved.
Use of this source code is governed by an MIT-style license that can be foundin the LICENSE file at https://material.angularjs.org/HEAD/license.
-->
<script src='https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.8/angular.min.js'></script>
<script src='https://cdn.gitcdn.link/cdn/angular/bower-material/v1.1.1/angular-material.js'></script>
<script src='https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-animate.min.js'></script>
<script src='https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-route.min.js'></script>
<script src='https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-aria.min.js'></script>
<script src='https://ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-messages.min.js'></script>
<script src='https://s3-us-west-2.amazonaws.com/s.cdpn.io/t-114/svg-assets-cache.js'></script>
<script src = "js/index.js"></script>
</body>
</html>@PrashantPimpale я добавил фрагмент



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Для этого вы можете использовать службу $ location, вы можете перенаправить своего пользователя на другой веб-сайт с помощью этой службы. Обратитесь к плункеру ниже, выберите ссылку из раскрывающегося списка, и она перенаправит вас на этот веб-сайт:
var app = angular.module('main',[]);
app.controller('myctrl', function($scope, $location, $window){
$scope.downloadFormat = ["https://code.angularjs.org/1.2.18/docs/"];
$scope.redirectToSite = function(site){
if ($scope.$$phase) { // check is digest cycle is already running
$window.location.href = site;
} else {
$location.url(site);
$scope.$apply();
}
};
});<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.2.18/angular.min.js"></script>
<div ng-app = "main">
<div ng-controller = "myctrl">
<select ng-model = "selectedFormat" ng-options = "x for x in downloadFormat">
</select>
<button ng-click = "redirectToSite(selectedFormat)">Redirect</button>
</div>
</div>
Stackblitz или какой-нибудь пример кода?