用于值输入的AngularJs缓存ng模型
这是我的表格:用于值输入的AngularJs缓存ng模型,angularjs,angular-ngmodel,Angularjs,Angular Ngmodel,这是我的表格: <div class="row responsive-sm" > <div class="col"> <label class="item item-input item-stacked-label"> <input type="text" ng-model="compte.nom" placeholder="Nom" > </label> </div> </div&
<div class="row responsive-sm" >
<div class="col">
<label class="item item-input item-stacked-label">
<input type="text" ng-model="compte.nom" placeholder="Nom" >
</label>
</div>
</div>
<div class="row">
<div class="col">
<button class="button button-block" ng-controller="detailsCompteInformation" ng-click="modifInfo()">Modifier mes informations</button>
</div>
</div>
但当用户单击我的按钮提交表单时,我调用modifInfo():
此函数在我的控制器中.controller('detailsmpteinformation')
如果用户更改了input compte.nom中的值,则无法获取新值。我得到了我的初始值
如何刷新$scope.compte
以从表单中获取新值?您有2个div块。
第一个没有任何控制器
第二个是绑定到DetailsImpteInformation控制器
在我的控制器中,我给compte.nom赋值如下:
var nom="";
if(angular.isObject(response.field_nomFamille))
{
nom=response.field_nomFamille.und[0].value;
}
dataDrupal={nom:nom};
$scope.compte=dataDrupal;
我假设您在compte.nom的detailsCompteInformation控制器中为compte.nom赋值,那么它与您的第一个块(包含您的输入)无关。您应该尝试用包装器包装这2个div块,并将其绑定到detailsCompteInformation控制器,然后删除第二个块中的detailsCompteInformation。
大概是这样的:
<div ng-controller="detailsCompteInformation">
<div class="row responsive-sm" >
<div class="col">
<label class="item item-input item-stacked-label">
<input type="text" ng-model="compte.nom" placeholder="Nom" >
</label>
</div>
</div>
<div class="row">
<div class="col">
<button class="button button-block" ng-click="modifInfo()">Modifier mes informations</button>
</div>
</div>
</div>
修改器mes信息
<div ng-controller="detailsCompteInformation">
<div class="row responsive-sm" >
<div class="col">
<label class="item item-input item-stacked-label">
<input type="text" ng-model="compte.nom" placeholder="Nom" >
</label>
</div>
</div>
<div class="row">
<div class="col">
<button class="button button-block" ng-click="modifInfo()">Modifier mes informations</button>
</div>
</div>
</div>