Angularjs ng第二次单击时单击不同的行为
下面是我的HTMLAngularjs ng第二次单击时单击不同的行为,angularjs,angularjs-ng-click,Angularjs,Angularjs Ng Click,下面是我的HTML <div id="alertmap-buttons" class="span2 no-margin"> <button id="alert-add-location" class="btn btn-default pull-left" ng-click="displayMap = !displayMap"><span ng-if="!displayMap">Add Location</s
<div id="alertmap-buttons" class="span2 no-margin">
<button id="alert-add-location" class="btn btn-default pull-left" ng-click="displayMap = !displayMap"><span ng-if="!displayMap">Add Location</span><span ng-if="displayMap">Done</span></button>
<button id="alert-cancel-location" class="btn btn-danger" ng-if="displayMap" ng-click="alert.latitude = !alert.latitude; alert.longitude = !alert.longitude;">Cancel</button>
</div>
<div ng-if="alert.latitude && alert.longitude" id="latlng-label" class='span3 pull-right no-margin'>
<div class="pull-left"><label class="latlng-label">lat: {{alert.latitude}}</label></div>
<div class="pull-right"><label class="latlng-label">long: {{alert.longitude}}</label></div>
</div>
这里应该做些什么来移除这个
还有一件事,这里的displayMap正在绘制一个地图来选择lat和lang,在我们选择单击完成时,地图将消失,并向用户显示一个表单。所有这些事情都将在一个模态对话框中发生。在这里,当我点击Cancel时,我需要清除lat&long的值,我也需要这样做
displayMap = !displayMap
但这种组合不起作用?有什么想法吗
谢谢您正在反转该值。停止反转,并将该值设置为false
ng-click="alert.latitude = false; alert.longitude = false;"
更新:
ng-click="displayMap = !displayMap; alert.latitude = false; alert.longitude = false;"
但由于这有点冗长,我可能会在控制器中创建一个函数来重置这些值。据我所知,使用ng click,只要分号分隔,您就可以让它做任意多的事情 谢谢Sten,成功了。。你能看一下我的问题吗,我已经更新了。不工作的Sten,在ng单击之前有一个ng如果使用,ng if=“displayMap”。我只需要在displayMap时显示Cancel按钮,我认为ng if正在阻止它按我的预期工作。我不完全确定您试图完成什么,但是如果将值设置为false而不是反转它呢?
ng-click="displayMap = !displayMap; alert.latitude = false; alert.longitude = false;"