角度JS:无法在ng-repeat中将值设置为ng-model变量
Angular JS: Unable to set value to ng-model variable inside ng-repeat
-
我有以下代码工作正常。也就是说,它显示带有国家/地区名称的组合框,当我在组合框中选择国家/地区时,它会打印"过滤数据:">
<span class="input-group-btn"> <button type="button" class="btn btn-default" ng-click=""><i class="glyphicon glyphicon-globe"></i> Country</button> <select class="form-control" style="width:200px;" ng-model="filters" ng-options="country.name for country in countries"></select> </span> Filter Data: {{filters}} </div>
在上面的代码中,我使用 ng-init="filters"(不是通过控制器(声明了一个范围变量,并且我正在尝试将选定的组合项设置为此变量。它工作正常。
-
然后,我用以下ng-repeat代码替换了上面的代码:
<span ng-repeat="filter in filterList"> <button type="button" class="btn btn-default" style="width:75px" ng-click="">{{filter.filterLabel}}</button> <span ng-switch="filter.filterType"> <span ng-switch-when="combo"><select class="form-control" style="width:200px" ng-model="filters" ng-options="country.name for country in filter.countryData"></select></span> </span> </span> Filter Data: {{filters}} </div>
上面的代码虽然在组合框中显示国家/地区名称,但当我选择一个国家/地区时,它不会在"过滤数据"附近显示任何内容。我认为可能是范围变量"过滤器"在ng-repeat附近不可见(只是一个猜测(,因此也尝试了也不起作用。
问题:
-
你能帮我理解为什么ng-model="filters"没有设置范围变量"filters"并让我打印它吗?
-
我还想在 ng-model 中动态创建变量名称。类似于ng-model="filters。{{filter.filterType}}".我试过了,但没有得到任何结果。它没有显示{{过滤器}}。在浏览了Stackoverlow上的一些帖子后,我尝试了ng-model="filters。[filter.filterLabel]"。这实际上是通过一些JS错误(说TypeError:无法设置未定义的属性'Country'(,当我在国家组合中选择一个项目时。似乎无法在过滤器中找到国家/地区(这是 [filter.filterLabel] 的结果(。因此,我声明ng模型的方式显然存在一些问题。
上面的代码(我想使用范围变量ng-init="filters"(,您能否帮助我正确为所选项目动态生成ng-model变量名称并能够使用{{filters}}
更新:
这是演示我的问题的小提琴:http://jsfiddle.net/ramarajuv/ag2crnk7/请帮助我纠正它。
提前谢谢大家。
让它工作了。
-
首先,在控制器的作用域中创建过滤器变量:
$scope.filters = { "Country":{}, "President of Country":{} };
-
然后,将ng-model格式化为:
ng-model="filters[filter.filterMap]
- 如何在定义js文件后为外部javascript文件设置变量
- 在 Jquery/Javascript 中使用多个 OR (||) 运算符时如何设置变量
- 在值内设置变量
- 在javascript函数中设置变量
- 设置变量时破坏游戏代码
- 未设置变量的赋值| jQuery的作用是什么
- 在可编辑行内设置变量
- 在不中断形式帖子的情况下在角度中设置变量
- MongoDB MonkAPI根据数据库请求之外可用的查找结果设置变量
- text方法中的javascript设置变量
- 如何为JavaScript函数设置变量以嵌入视频
- 使用jQuery和PHP加载区域设置变量
- 包括外部JS文件和设置变量
- 在jQuery File upload插件中设置变量上传路径
- 设置变量函数不起作用
- Session.get未在Meteor.js中设置变量
- 为cytoscape.js mapData设置变量限制
- 如何在脚本标记中设置变量
- 使用控制器在conditional.js.erb文件中设置变量
- 如何从控制台动态设置变量