In this plunk我試圖在指令中獲取一個數組,其數值在指令聲明中的<li>
列表中輸入。獲取在HTML標記中輸入的指令值
鑑於此指令聲明:
<directive>
<ul>
<li id="0">xxx 0</li>
<li id="1">xxx 1</li>
<li id="2">xxx 2</li>
</ul>
</directive>
數組應該返回是這樣的:
scope.array = [ {id:0, name: "xxx 0"}, {id:1, name: "xxx 1"}, {id:2, name: "xxx 2"} ];
這是我嘗試(不工作):
angular.module('app', []);
angular.module('app')
.directive('directive', function() {
var directive = {};
directive.restrict = 'AE';
directive.template = "<div>{{array}}</div>";
directive.scope = true;
directive.link = function(scope, element, attrs) {
scope.array = element.find("ul")[0].children;
};
return directive;
});
你只需設置陣列'li'元素的列表。你需要通過每一個,並取出id屬性和內容,創建對象,並將其推送到數組。我必須說這是一個奇怪的事情來寫一個指令,但嘿,派對。 –