javascript - 从 Javascript 设置 ng-model 名称

标签 javascript html angularjs

如何从 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/

相关文章:

javascript - MongoDB 正则表达式替换

单击主菜单项上的 jQuery 不会显示子子菜单

html - 我无法让我的按钮以正常大小显示

java - 从 servlet 更新数据

html - 如何设置$mdDialog 的最大宽度?

php - 使用 php 的输出值作为 javascript 中的变量?

JavaScript,使用数组更改对象的值而不影响整个对象

javascript - 在函数外部添加自定义过滤器时,Angular 应用程序未定义

javascript - 使用另一个数据源作为默认选择时,从 ui-select 选项中删除重复项

javascript - 如何使用 dexie.js 添加新条目