gpt4 book ai didi

javascript - 如何从 angularjs 指令中获取对封闭表单元素的引用?

转载 作者:行者123 更新时间:2023-11-28 01:24:32 26 4
gpt4 key购买 nike

我有以下 HTML:

<form name="my-form">
<div class="col-sm-4">
<input type="phone" name="mobileNumber" ng-model="form.mobileNumber" value="0439888999" required>
</div>
</form>

指令中包含以下代码:

angular.module('myApp.directives')
.directive('required', function ($compile) {
return {
restrict: 'A',
require: 'ngModel',
link: function(scope, element, attr, ngModel) {
var formName = element.parents('form').attr('name');
var fieldName = element.attr('name');
}
};
});

但是当我运行单元测试时,出现错误:TypeError: Object [object Object] has no method 'parents'

我知道这是因为我的 AngularJS 版本(v1.2.13)打包的 jqLit​​e 不支持parents方法。

我的问题是,如何在指令中实现相同的功能?我是否需要使用 jQuery,如果需要,如何将其作为依赖项注入(inject)到我的指令和单元测试中?

最佳答案

parents 替换为 parent 应该可以;)

var formName = element.parent('form').attr('name');

jQlite 的可用方法列表:

http://docs.angularjs.org/api/ng/function/angular.element

关于javascript - 如何从 angularjs 指令中获取对封闭表单元素的引用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22854740/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com