如何在我的情况下选择父元素

时间:2015-09-21 17:06:04

标签: angularjs unit-testing angularjs-directive

我试图在我的指令

中找到父元素

我有类似

的东西
angular.module('myApp').directive('testFuc', [
    function() {
        return {
            restrict: 'A',
            link: function(scope, elem) {
                elem.bind('click', function() {
                    elem.closest('td').after('<div>texts here<div>');
                });
            }
        };

我的问题是单元测试无法识别Jquery的closest方法。并且出现“undefined is not a function”错误。

相反,我必须使用

elem.parent().parent().parent().after('<div>texts here<div>');

它通过了单元测试但需要3 parents()。我想知道在我的案例中是否有更好的方法来附加div。

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

您可以使用以下内容:

ele.parents().eq(2).after('<div>texts here<div>');