改变函数中的ng-repeat作用域不会更新作用域
Changing ng-repeat scope in function doesn't update scope
我在我的应用程序中使用Angular材料。在一个ng-repeat列表中,我有字段。然而,我希望用户能够经常使用的前缀添加到文本。例如,如果他想输入"hours: 5",他可以点击一个按钮,在输入字段中添加"hours:",这样他就只需要输入5。
这就是我现在拥有的:HTML:
<md-menu>
<md-button ng-click="$mdOpenMenu($event)" class="ps-button" aria-label="Open sample menu">
+
</md-button>
<md-menu-content class="ps-selectcontainer">
<md-menu-item ng-repeat="remark in remarks"><md-button class="ps-button" ng-click="addRemark(remark, this)">{{remark}}</md-button></md-menu-item>
</md-menu-content>
</md-menu>
</md-input-container>
输入容器:
<md-input-container md-no-float class="md-block" >
<input ng-model='form_noteName' type="text" placeholder="Note" maxlength="255" required>
</md-input-container>
在Javascript中:
$scope.addRemark = function (remark, repeatScope){
if(repeatScope.form_noteName){
repeatScope.form_noteName = remark + repeatScope.form_noteName;
$scope.stupidvariable = repeatScope.form_noteName;
return;
}
repeatScope.form_noteName = remark;
return;
};
这个想法是,当我点击一个项目在md菜单它打开函数addRemark传递作用域,在addRemark它修改作用域和输入字段已经改变。
但变量form_noteName不改变,我不知道我做错了什么。我哪里做错了?
编辑。:这是一个采用类似方法的普朗克:http://plnkr.co/edit/1j3F64YyJPftxLf8QaZD?p=preview
谢谢:)
不能有两个n -click。您需要将两个语句放在一起,用分号分隔,如下所示:
ng-click="addRemark(remark, this); testvariable='remark'"
也可能不需要"this",因为"remark"将给出特定的元素。但是,我没有足够的代码来确定
相关文章:
- 对父作用域的指令更新延迟了一步
- 当我更新另一个作用域变量时,作用域变量会自动更新
- AngularJS select with ng选项不更新父作用域中的引用对象属性
- 如何更新作为属性传入的作用域变量
- 从$http.get调用更新Angular作用域变量
- 隔离未更新指令中值的作用域
- Angular.js-从指令更新父作用域
- 修改作用域变量后,未更新作用域绑定
- 角度指令的父作用域未更新UI
- 正在更新UI路由器状态更改上的父作用域
- 更新侧自调用函数中的外部作用域对象
- AngularJS:如何在指令范围的对象发生变化时更新与控制器作用域相关联的控制器作用域
- 在 AngularJS 中执行作用域函数内的服务后,范围变量不会更新
- 离子选择不会更新依赖于作用域变量的功能
- 在 $scope.$watch 中更新时,独立作用域绑定不起作用
- 作用域变量未在$Scope中更新$看
- Angular.js-视图不't在resize事件中更改作用域变量时更新
- AngularJs:将一个值传递给打开ngDialog的指令,然后将更新的值反映回根作用域
- AngularJS:指令作用域更新&单击事件
- 如何在回调函数中从另一个作用域更新变量