在自定义指令中使用ng Repeat填充选择下拉列表
Using ng Repeat inside a custom directive to populate a select dropdown
我在自定义指令中使用ng Repeat填充选定的下拉菜单时遇到了问题。我发现这个例子看起来非常类似于我想要实现http://plnkr.co/edit/W1MMx7vjKKXFuV8LbBjJ?p=preview。它似乎有效,但不是我的。
目标:获取select下拉列表以显示来自testArray
的选项数组Plunkr: http://plnkr.co/edit/XMwFKTYRgqYzOcsUMDEp?p=preview
var app = angular.module('myapp', []);
app.controller('mainController', function($scope) {
$scope.testArray = [{'option' : '1' }, {'option': '2'}, {'option': '3' }];
$scope.testModel = {};
});
app.directive('testDirective', function() {
return {
scope: {
dataHeldmodel: '=',
dataOptions: '='
},
template: '<select name="dataHeldmodel" data-ng-model="dataHeldmodel">' +
'<option value="">Select</option>' +
'<option value="{{option.option}}" data-ng-repeat="option in dataOptions">{{option.option}}</option>' +
'</select>',
replace: true
}
});
<script src="https://code.angularjs.org/1.4.3/angular.js"></script>
<!DOCTYPE html>
<html data-ng-app="myapp">
<head>
<link rel="stylesheet" href="style.css" />
<script data-require="angular.js@1.4.3" data-semver="1.4.3" src="https://code.angularjs.org/1.4.3/angular.js"></script>
<script src="script.js"></script>
</head>
<body data-ng-controller="mainController">
<test-directive data-options="testArray" data-heldmodel="testModel"></test-directive>
</body>
</html>
使用ng-repeat:http://plnkr.co/edit/MP2C1VDi9YlM1HBDsbO2
将data改为data:
scope: {
datHeldmodel: '=',
datOptions: '='
}
和
<test-directive dat-options="testArray" dat-heldmodel="testModel"></test-directive>
似乎'data'作为属性是保留的
尝试使用默认的ng-options
指令来解决这个问题。
<select ng-model="testModel" ng-options="obj.name for obj in testArray track by obj.id"></select>
相关文章:
- 如何设置html元素填充的动画
- 如何使用jquery在填充自动完成的值后使文本框只读
- 如何通过ajax刷新JSF填充的javascript变量
- ng init中的表达式无法使用ng repeat
- 用与线条相同的颜色填充多折线图上的点
- 用每小时的差值填充数组/列表-从下拉列表中给定两个时间值
- 在Angular JS中,预先填充ng中的下拉值repeat
- 使用ng repeat用数组中的数据填充表行
- 复选框列表 将数组格式化为 JSON 并在 ng-repeat 中映射后未填充
- 如何在html中只使用ng repeat来填充数据,而不使用repeat html's元素
- 项目不't在超时时填充ng repeat时显示
- ng repeat:用数组填充下拉选项
- 通过ng-repeat将ajax数据填充到表中的问题
- 在ng-repeat指令中预填充输入文本
- 用动态变量填充ng-repeat中的数据
- 如何使用angularJS在列嵌套的ng-repeat中执行搜索,以便首先填充所有行
- 在自定义指令中使用ng Repeat填充选择下拉列表
- Angular 1:使用server's json中的二维数组,用ng-repeat填充表
- 如何从多个选择框中保存值,该框在angularjs中使用ng-repeat填充
- Angularjs用不同作用域的inng -repeat填充下拉列表