输入标记的值不从AngularJS + Ionic中的列表更新

时间:2016-01-30 20:43:43

标签: angularjs ionic-framework

我试图根据点击事件将输入值设置为等于ion-list中的项目。该值会在首次点击活动时更新,但不会在以后点击时更新

<ion-view view-title="Add Cities">
  <ion-content>
           <label class="item-input-wrapper bar-subheader">
          <i class="icon ion-android-search placeholder-icon"></i>
            <input style="width:100%" type="text" placeholder="Search" ng-model="CityName">
          </label>

          <ion-button class="button ion-plus button-positive" ng-click="addCity(CityName)" >Add</ion-button>
          <div class="list">
            <ion-list>
                <ion-item ng-repeat="item in states|filter:CityName" ng-click="set(item)">
                    {{item}}
                </ion-item>
            </ion-list>

          </ul>
          </div>


  </ion-content>
</ion-view>

controller.js中的相关功能

$scope.set=function(title){
       $scope.CityName=title;

       console.log(title);

   }

我已经检查了控制台的功能触发但输入只更新了一次 我已经尝试在函数集中添加$ scope。$ apply()但它仍然无法正常工作。
请在上面的代码中建议编辑或者有更好的方法来做同样的事情吗?

1 个答案:

答案 0 :(得分:1)

答案由@Pankaj Parkar解释here 我的问题是通过重命名ng-model =&#34; CityName&#34;到ng-model =&#34; data.CityName&#34;

<input style="width:100%" type="text" placeholder="Search" ng-model="data.CityName">

并更改此

$scope.set=function(title){
       $scope.CityName=title;
       console.log(title);
   }

$scope.set=function(title){
       $scope.data={'CityName':title};
       console.log(title);
   }