【发布时间】:2013-09-17 13:56:20
【问题描述】:
在这个问题之后: AngularJS ng-include inside of Google Maps InfoWindow?
提供的解决方案效果很好,但我在将 ng-click 添加到模板时发现了一个问题,它没有得到评估。
<script type="text/ng-template" id="/test.html">
<h4>{{latLng[0]}},{{latLng[1]}}</h4>
<button ng-click="clickMe()"/>click</button>
</script>
clickMe 只是测试控制器内部的功能,
$scope.clickMe = function(){
alert("clicked");
}
附加信息: ng-hide 的评估结果很好:
<script type="text/ng-template" id="/test.html">
<h4>{{latLng[0]}},{{latLng[1]}}</h4>
<button ng-hide="true" ng-click="clickMe()"/>click</button>
</script>
任何帮助都会很棒,谢谢大家,我已经摸索了几天,但没有任何结果。
问候 吉姆
【问题讨论】:
-
<button>不是自闭合标签。格式错误的 html 可能会导致您的问题。应该是:<button ng-click="clickMe()">click</button>. -
您的问题也可能是范围。为了帮助缩小问题范围,请设置
ng-hide="foo"和设置ng-click="foo=!foo"。如果单击时按钮消失,则 ngClick 正在工作。 -
按钮没有消失,你建议的测试,干杯
-
哦!刚刚注意到您问题上的
google-maps标签。单独使用 GoogleMaps api 是一个巨大的痛苦,而使用 Angular 则更加麻烦。尝试在那里粘贴一个 ng-transclude。如果该属性不起作用,则必须编写自定义指令并在模板上调用$scope.$compile(),然后再将其注入 DOM。 -
感谢 Jacob,我在将模板注入 DOM 之前已经编译了模板,除了 ng-click 没有正确绑定之外,一切正常。
标签: google-maps angularjs