当前位置: 首页 > 面试题库 >

如何在angularjs中为ng-model动态赋值?

宗啸
2023-03-14
问题内容

在这里,我使用ng-repeat例如动态生成html元素

<div ng-repeat="type in types">
    <input  type="checkbox" ng-model="{{type}}" />{{ type }}
</div>

我想为ng-model设置类型值。是否有可能或者我想像这样为ng-true-value设置类型值

<div ng-repeat="type in types">
    <input  type="checkbox" ng-model="{{type}}" ng-true-value="{{type}}" />{{ type }}
</div>

问题答案:

由于ng-repeat为每种类型/项目/迭代创建子范围,因此我们需要将每种类型的ng-model与父范围而不是子范围相关联。一种方法是使用$ parent:

<input type="checkbox" ng-model="$parent[type]">{{ type }}

如果像在@Alex的答案中那样定义$
scope.types,则如果单击相应的复选框,则属性typeOnetypeTwotypeThree将出现在父作用域上,并且属性的值为true。如果再次单击选中的复选框,该属性将保留,并且该值将切换为false。因此,您的代码将必须检查不存在的属性以及存在的值设置为true或false的属性。有点混乱。

我希望在父作用域上预定义对象数组,其中每个对象都有类型(名称)和一个布尔值,以指示是否选择了它:

$scope.types = [ 
  {name: 'typeOne', selected: false},
  {name: 'typeTwo', selected: false},
  {name: 'typeThree', selected: false}];

然后,不需要$ parent(因为“ type”的值将是对父对象的引用,而不是父属性(原始)值的副本):

<input type="checkbox" ng-model="type.selected">{{ type.name }}


 类似资料:
  • 问题内容: 我想问你是否可以帮我这个忙。 我在这里用我的问题创建了一个jsfiddle 。我需要使用ng-model =“ my _ {{$ index}}”方式在ng-repeater中动态生成一些带有ng-model的输入。 在jsfiddle中,您可以看到一切正常,直到我尝试动态生成它为止。 HTML将是: 还有javascript … 你能给我个主意吗? 非常感谢。 问题答案: 它能解决您

  • 本文向大家介绍AngularJS动态绑定ng-options的ng-model实例代码,包括了AngularJS动态绑定ng-options的ng-model实例代码的使用技巧和注意事项,需要的朋友参考一下 什么情况下会需要动态绑定 ng-model 呢?若你的数据结构长得像是下面这样: 此时你需要用 ng-repeat 将数据展开,并且将 Options 个别设置为 ng-options 的数据

  • 问题内容: 我有这个reprohttp://embed.plnkr.co/nVCmukG5abpi1Y4ZHkrq,当我单击“ Title3”并在文本框中输入一个值时显示,尽管输入的值显示在UI中,当我单击“单击”按钮时,什么也没有绑定到范围属性$ scope.test。 我不知道ng-switch有什么问题,或者我做错了什么。帮助表示赞赏!!! http://embed.plnkr.co/nVC

  • 问题内容: 我正在学习AngularJS。我遇到了我无法解释的内容,也找不到针对(或解决方案)的任何解释。 我有一个简单的AngularJS应用,并且尝试将a绑定到一个值,但是它不起作用。例如: 如何使最后一个跨度使用2向绑定,以便编辑其值会更新chunk.value,反之亦然? 问题答案: ng-bind !使用ng-bind在“ span”中进行单向绑定。 请参考此处的示例:https : /

  • 问题内容: 我正在尝试处理ng-repeat循环内的范围问题-我浏览了很多问题,但还无法使我的代码正常工作。 控制器代码: 视图: 这是一个小提琴:http : //jsfiddle.net/cyberwombat/zqTah/ 基本上,我有一个包含多行文本的对象(这是一个传单生成器)。用户可以调整每行文本(文本,字体,大小,颜色等),我想为其创建预览。上面的示例仅显示了输入文本的输入字段,我希望

  • 问题内容: 我刚刚升级到角度版本1.3.8。 当使用1.2.23版本时,我创建了一条指令来将数据表单视图转换为模型,反之亦然。 这是我的指令: }); 我在这里看到现在支持绑定中的getter和setter,但是我在任何地方 都 找不到如何同时使用getter 和 setter的方法。有什么办法吗?那就是-ng-model- options可以代替我的convert指令吗? 谢谢 问题答案: 该文