Javascript 如何使用bind将指令创建的元素绑定到Angular中的模型中?

Javascript 如何使用bind将指令创建的元素绑定到Angular中的模型中?,javascript,html,angularjs,Javascript,Html,Angularjs,我想用controller中的对象对输入元素建模,但该元素不是html中的元素。我有一个指令,在里面我在下面的代码片段中创建了elementnewElement。 1.指令: panel.directive('ngCustomType', function ($compile) { return { scope: { entity: '=' }, link: function (scope, elem, attrs){ newElement = angu

我想用controller中的对象对输入元素建模,但该元素不是html中的元素。我有一个指令,在里面我在下面的代码片段中创建了elementnewElement。 1.指令:

panel.directive('ngCustomType', function ($compile) {
return {
    scope: {
        entity: '='
    },
 link: function (scope, elem, attrs){
    newElement = angular.element('<input type="text"/>');
    newElement.attr("ng-model", "entity.name");     // I also tried newElement.attr("ng-model", "currentEntity.name"); but it didn't work
    $compile(newElement)(scope);
    elem.append(newElement);
}
3.意见:

<div ng-custom-type  entity="currentEntity"></div>
当我在生成的html中选中created input元素时,输入元素中有ng model='entity.name',但它实际上不是由我的对象建模的,当我更改输入currentEntity.name时,它不会更改。如何将它们绑定在一起?

试试以下方法:

newElement.attr("ng-model", "entity.name");
newElement.attr("ng-model", "entity.name");