如何从 javascript 设置 ng-model 名称?
HTML
<div ng-repeat="model in models">
<input ng-model="?">
</div
JS
$scope.models= [
{name: "modelOne"},
{name: "modelTwo"},
{name: "modelThree"}
];
非常感谢您的回答。
最佳答案
就这么简单
<div ng-repeat="model in models">
<input ng-model="model.name">
</div>
说明
ng-repeat
遍历你的 models
数组并将添加一个 model
每次迭代范围内的项目。从里面的 HTML ng-repeat
, 你可以使用 model
就好像你把它放在你的 $scope
里一样来自 Controller 。
欢迎阅读更多documentation about ng-repeat
如果那不是你想要的
如果$scope.models
应该是一个属性名称列表,例如你想实际编辑 $scope.modelOne
而不是字符串 modelOne
本身(第二次阅读我认为这可能是你的意思),你不能直接这样做,但你可以在两者之间使用一个对象,即编辑 $scope.foo.modelOne
而不是 $scope.modelOne
<div ng-repeat="model in models">
<input ng-model="foo[model.name]">
</div>
在你的 Controller 中有
$scope.foo = {
'modelOne': 'some text',
'modelTwo': 'some other text',
'modelThree': 'hello world'
}
关于javascript - 从 Javascript 设置 ng-model 名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29437380/