我试图根据点击事件将输入值设置为等于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()但它仍然无法正常工作。
请在上面的代码中建议编辑或者有更好的方法来做同样的事情吗?
答案 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);
}