我開始使用Angular.js指令,所以我使用自定義指令動態生成DOM。如何在Angular.js中綁定動態生成的元素?
我的指令的簡化版本如下:
angular.module('app', [])
.controller('Controller', ['$scope',
function($scope) {
$scope.name = "André Pena";
$scope.email = "[email protected]"
}
])
.directive('gText', function() {
return {
restrict: 'E',
link: function(scope, element, attrs) {
//input
var input = angular.element("<input/>");
input.attr("type", "text");
input.addClass("form-control");
input.attr("placeholder", attrs.placeholder);
input.attr("name", attrs.property);
element.append(input);
}
};
});
和簡單的使用這個指令是:
<g-text label="E-mail" property="email" placeholder="Enter some e-mail"></g-text>
正如你所看到的,我動態創建一個input
標籤使用Angular.js element
。我想將此元素的value
與property
屬性中指定的屬性綁定。在這種情況下,我希望輸入的值爲email
範圍屬性([email protected])。
如何做到這一點?
我想這可能是有益的[試試這個] [1] [1]:http://stackoverflow.com/questions/19867554/bind-angularjs-to-newly-created-html-element-dynamically –