从ng-repeat中的Angular选择框中删除所选选项以获取下一个索引

时间:2017-03-21 11:17:39

标签: html angularjs repeat

我正在研究已经在ng-repat选项中的角度js下拉。 我想让它工作的方式是,当在任何重复的选择框中选择一个选项时,它不应该在其他重复的选择框中可用。 我目前的代码看起来像这样。 :

HTML:

<div ng-repeat="endDate in endDate_counts">
<div class="sch_endDate_opsAmount_cell cell1">
<strong class="nc_Camaignfinance_title">Option</strong>
 <div class="nc_Camaign_costFinance_opsSlct" select-input>
   <div class="nc_Camaign_costFinance_opsSlct_inn">
    <span>{{endDate.select_endDate}}</span>
   <ul>
  <li ng-click="endDate.select_endDate = 'Never'">
        <em>Never</em></li>
    <li ng-click="endDate.select_endDate = 'Impressions'">
        <em>Impressions</em></li>
    <li  ng-click="endDate.select_endDate = 'Budget'">
        <em>Budget</em></li>
    <li  ng-click="endDate.select_endDate = 'Clicks'">
        <em>Clicks</em></li>
    <li  ng-click="endDate.select_endDate = 'Date'">
        <em>Date</em></li>
</ul>
</div>
</div>
</div>
</div>

*注意:请忽略自定义指令或其他方法。我自己使用它们并意识到它们。

1 个答案:

答案 0 :(得分:0)

尝试:

HTML:

<ul>
<li ng-show="checkExist(key-1,'Never')" ng-click="endDate.select_endDate = 'Never'">
    <em>Never</em></li>
<li ng-show="checkExist(key-1,'Impressions')" ng-click="endDate.select_endDate = 'Impressions'">
    <em>Impressions</em></li>
<li ng-show="checkExist(key-1,'Budget')" ng-click="endDate.select_endDate = 'Budget'">
    <em>Budget</em></li>
<li ng-show="checkExist(key-1,'Clicks')" ng-click="endDate.select_endDate = 'Clicks'">
    <em>Clicks</em></li>
<li ng-show="checkExist(key-1,'Date')" ng-click="endDate.select_endDate = 'Date'">
    <em>Date</em></li>

在js文件中添加此功能:

$scope.checkExist = function(index,value){
    if(index < 0){
        return true;
    }

    if($scope.endDate_counts[index].select_endDate == value){
        return false;
    }else {
        return true;
    }
}