这是我的app.js
var countryApp = angular.module('countryApp', ['ngRoute']);
countryApp.controller('testController', ['$scope', '$http', '$location', function ($scope, $http, $location) {
$http({
url: 'countries.json',
method: "GET",
headers: {'Content-Type': 'application/json'}
}).success(function (data) {
$scope.details = data;
console.log("data---------->", $scope.details);
}).error(function (data) {
console.log("data error---------->", $scope.details);
})
}]);
countryApp.config(['$routeProvider', function ($routeProvider) {
//$httpProvider.interceptors.push('httpErrorInterceptor');
$routeProvider.when('/countrydetails', {
templateUrl: 'partials/country-detail.html',
//controller: 'testController',
}).otherwise({
redirectTo: '/countrylist',
templateUrl: 'partials/country-list.html',
controller: 'testController',
});
}])
countryApp.factory('testService', ['$scope', '$http', function ($scope, $http) {
return { }
}])
这是我的countries-list.html
<h1>COUNTRIES</h1>
<select>
<option ng-repeat="country in details | orderBy:'name'">
<a>{{country.name}}</a>
</option>
</select>
<a href="#/countrydetails"><button >click</button></a>
按钮点击时,我需要在下一页上获取国家/地区名称。 为此,我有一个名为country-details.html的html页面 我该怎么做才能在这个html页面中获得该国家的名称。
答案 0 :(得分:1)
设置你喜欢的路线
$routeProvider.when('/countrydetails/:name', {
templateUrl: 'partials/country-detail.html',
});
更改 html 之类的内容。
<a ng-href="#/countrydetails/{{country.name}}">
<button >click</button></a>
最好实现命中控制器功能以使用正确的路线,但这是你真正需要的。
答案 1 :(得分:0)
你可以像这样制作href:
<a href="#/countrydetails/{{contry.name}}">
将路线设为
$routeProvider.when('/countrydetails/:name', {
然后在下一页的Controller中,注入$routeParams
controller('countryDetailsController', function ($scope, $routeParams) {
$scope.countryName = $routeParams.name
});
然后,在您的HTML中只需使用{{countryName}}
答案 2 :(得分:0)
创建了一个模拟您的场景的plunker。请检查这是否有帮助。 http://plnkr.co/edit/hV16OB?p=preview
这一部分非常重要。
$routeProvider.when('/countrydetails/:countryName',