从指令

时间:2016-03-07 19:39:59

标签: html angularjs angularjs-directive

为了禁用表单中chrome的自动完成,我想创建添加虚拟输入元素的angular指令 我的代码是      `angular.module(“noc.components”)。directive('customInput',function($ compile){        “使用严格”;

return {
    restrict:'E',
    template:'<input>',
    replace:true,
    link: function(scope, elem) {
        //scope.type = attrs.type || 'email';
        var el = angular.element('<input name={{type}} style="display: none">');
        //var type = elem[0].name;
        $compile(el)(scope);
        elem.parent().append(el);
    }
};

});`

和html是

<div class="form-group">
                                <label for="setupWizardUserStepEmail">Email Address</label>
                                <custom-input class="form-control"
                                       id="setupWizardUserStepEmail"
                                       ng-model="setupRequest.userRequest.email"
                                       name="email"
                                       ng-required="true"
                                       noc-validation="email"
                                       autocomplete="off"
                                        autofocus="true">
                            </div>

然而注入的html不在父级中 - 我希望它高于指令 我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

我最终能够解决自己的问题:

我将其更改为elem.parent().prepend(el);