我有这个控制器。 这是我正在处理的应用程序的地图视图。 由于某种原因,我在页脚上的按钮不起作用。关于该函数的操作永远不会被调用...
.controller('mapaCtrl', function($scope, $compile, $location) {
$scope.goPayment = function() {
$location.path('side-menu/history');
};
var myLatlng = new google.maps.LatLng(34.603711, -58.381585);
var mapOptions = {
center: myLatlng,
zoom: 16,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map"), mapOptions);
navigator.geolocation.getCurrentPosition(function(pos) {
map.setCenter(new google.maps.LatLng(pos.coords.latitude, pos.coords.longitude));
var myLocation = new google.maps.Marker({
position: new google.maps.LatLng(pos.coords.latitude, pos.coords.longitude),
map: map,
title: "My Location"
});
google.maps.event.addListener(myLocation, 'click', function() {
infowindow.open(map,myLocation);
});
});
var contentString = "<div><a ng-click='clickTest()'>Pagar Aqui!</a></div>";
var compiled = $compile(contentString)($scope);
var infowindow = new google.maps.InfoWindow({
content: compiled[0]
});
$scope.map = map;
$scope.clickTest = function() {
$location.path('side-menu/pay');
};
})
我在html
上有这个电话<ion-view title="Mapa" id="page13">
<ion-content ng-controller="mapaCtrl">
<div id="map" data-tap-disabled="true"></div>
</ion-content>
<ion-footer-bar align-title="left" class="bar-balanced">
<button class="button" ng-click="goPayment()">Ver mis pagos</button>
在按钮上单击没有调用“$ location.path('side-menu / history');”
你能帮助我吗?
答案 0 :(得分:2)
您的按钮超出了控制器的范围。 检查你的代码。
<ion-view title="Mapa" id="page13">
<ion-content ng-controller="mapaCtrl">
<div id="map" data-tap-disabled="true"></div>
</ion-content> <!--controller ends here-->
<ion-footer-bar align-title="left" class="bar-balanced">
<button class="button" ng-click="goPayment()">Ver mis pagos</button>
按钮位于控制器外部,因此无法调用任何功能。
答案 1 :(得分:0)
您已将控制器设置在“ion-content”标签上。您的按钮元素位于此标记之外。只需将结束标记移动到按钮下方即可。
<ion-view title="Mapa" id="page13">
<ion-content ng-controller="mapaCtrl">
<div id="map" data-tap-disabled="true"></div>
<ion-footer-bar align-title="left" class="bar-balanced">
<button class="button" ng-click="goPayment()">Ver mis pagos</button>
</ion-content>
或者在更高级别的元素上定义控制器。
<div ng-controller="mapaCtrl">
<ion-view title="Mapa" id="page13">
<ion-content>
<div id="map" data-tap-disabled="true"></div>
</ion-content>
<ion-footer-bar align-title="left" class="bar-balanced">
<button class="button" ng-click="goPayment()">Ver mis pagos</button>
</div>