Javascript 角度-从范围变量获取ng模型名称
有办法吗Javascript 角度-从范围变量获取ng模型名称,javascript,angularjs,Javascript,Angularjs,有办法吗 ng-model="{{att.myModel}}" 我有一个名为AllSmallText的数组,其中包含项。我想在AllSmallText上使用ng repeat构建表单,并将ng模型值设置为myModel,这是项字段之一 <div ng-repeat="att in AllSmallText" class="col-xs-6 col-md-6"> <input class="form-control" name="firstnam
ng-model="{{att.myModel}}"
我有一个名为AllSmallText的数组,其中包含项。我想在AllSmallText上使用ng repeat构建表单,并将ng模型值设置为myModel,这是项字段之一
<div ng-repeat="att in AllSmallText" class="col-xs-6 col-md-6">
<input class="form-control" name="firstname" placeholder="{{att.title}}" type="text"
ng-model="{{att.myModel}}"
required autofocus />
</div>
谢谢您不需要大括号,请使用
ng model='attr.myModel'
更新的答案
ngModel
将通过计算当前作用域上的表达式,尝试绑定到给定的属性。
如果该属性在此范围中不存在,则将隐式创建该属性并将其添加到范围中
添加一个新范围
$scope.myForm = {};
并使用ng model=“myForm[attr.myModel]”
,这将创建一个新的作用域属性,如$scope.myForm.hello
希望这能有所帮助。有一种方法可以实现,那就是通过另一个指令添加ng模型指令 您的标记中可以有一个add model指令:
<input type="text" add-model="{{myModel}}" />
Fiddle:如果有人以这种方式寻找任何东西,您可以使用以下语法:
使用ng model=“{att.myModel}}”而不是ng model=“[att.myModel]”我想使用存储在att.myModel中的名称的ng model名称检查此q/a,这可能会对您有所帮助。:)这不是我想要的。我在我的作用域中定义了:attr.myModel=“hello”,我希望ng模型hello@user3944498您将不得不使用或
myApp.directive('addModel', function($compile) {
return {
restrict: 'A',
link: function(scope, element, attrs, ctrl) {
var model = attrs.addModel;
element.attr('ng-model', model);
element.removeAttr('add-model'); // avoid infinite loop
$compile(element)(scope);
}
};
});