2017-03-17 86 views
0

我希望我的按钮仅在选择区域中选择了其中一个选项时才显示。仅当选择了选项时显示按钮

<div class="row" ng-controller='ctrl1'> 
     <div class ="form_group"> 
      <select class="form-control" ng-options='item as item.hotel_name for item in hotels.data' ng-model='current_Hotel' ng-click="selectHotel()"><option value="" selected disabled>Choose a hotel</option> 
      </select> 
     </div> 

     <div class="col-md-6">  
      <h1>{{current_Hotel.hotel_name}}</h1> 
      <p>{{current_Hotel.hotel_description}}</p> 
      <img class="img img-responsive" ng-src="{{current_Hotel.image_url}}"> 
      <btn class="btn btn-primary">Book a room </btn> 
     </div> 
</div> 

我试过使用ng-show和ng-hide,但它没有按照我的要求工作。

+0

尝试对按钮使用'ng-show'指令。它非常简单而有效。 –

+0

'ng-show'条件'selectedOptions.length> 0' –

回答

2

使用ng-if指令与多个条件

<div class="col-md-6" ng-if="current_Hotel && current_Hotel != ''"> 
    <h1>{{current_Hotel.hotel_name}}</h1> 
    <p>{{current_Hotel.hotel_description}}</p> 
    <img class="img img-responsive" ng-src="{{current_Hotel.image_url}}"> 
    <btn class="btn btn-primary">Book a room </btn> 
</div> 
+0

这也适用。谢谢 – DragonBorn

+0

没有问题请务必标记为答案:D –

1

ngmodel的选择选项时,选择将被设置,你需要的,如果选择的模型检查或不

<div class="row" ng-controller='ctrl1'> 
     <div class ="form_group"> 
      <select class="form-control" ng-options='item as item.hotel_name for item in hotels.data' ng-model='current_Hotel' ng-click="selectHotel()"><option value="" selected disabled>Choose a hotel</option> 
      </select> 
     </div> 

     <div class="col-md-6">  
      <h1>{{current_Hotel.hotel_name}}</h1> 
      <p>{{current_Hotel.hotel_description}}</p> 
      <img class="img img-responsive" ng-src="{{current_Hotel.image_url}}"> 
      <btn ng-show="current_Hotel" class="btn btn-primary">Book a room </btn> 
     </div> 
</div> 
2

ng-showng-hide应该工作根据您在选择选项时分配的ng-model的值,假设您在相同的范围内工作。

你试过ng-show="current_Hotel !== ''"

+1

当我使用ng-show =“current_Hotel.hotel_name!==''”时工作。谢谢 – DragonBorn

+1

@SLASH不客气!作为对sachila ranawaka响应的补充(当前选定):我没有提及 - 如果因为它从html中删除了代码,并且每个摘要循环都执行评估以检查是否必须再次包含代码,并且这可能导致性能问题如果过度使用,那么要小心! – Diego

+0

我会记住这一点。谢谢 – DragonBorn

相关问题