Angularjs 如何获取元素';s attr数据与jqlite成角度关系?
如何使用jqlite在angular中获取元素的attr数据 html 有什么想法吗?Angularjs 如何获取元素';s attr数据与jqlite成角度关系?,angularjs,angular-directive,jqlite,Angularjs,Angular Directive,Jqlite,如何使用jqlite在angular中获取元素的attr数据 html 有什么想法吗?attr()是jqLite元素上可用的方法 e.target是对DOM元素的引用 首先需要将DOM元素包装为jqLite元素: var form = angular.element(e.target).attr('href'); 使用e.target.href或e.target.getAttribute('href'),具体取决于您是否需要绝对链接或相对链接。我仍然想知道为什么要将href属性分配给一个非链接
attr()
是jqLite元素上可用的方法
e.target
是对DOM元素的引用
首先需要将DOM元素包装为jqLite元素:
var form = angular.element(e.target).attr('href');
使用
e.target.href
或e.target.getAttribute('href')
,具体取决于您是否需要绝对链接或相对链接。我仍然想知道为什么要将href属性分配给一个非链接元素。我得到了这个错误错误:[$parse:syntax]语法错误:标记'htmldevelment'是意外的,应该在表达式[[object htmldevelment]]的第9列[]从[htmldevelment]]开始。
表单变量被定义为控制器函数的本地变量,但是你试图在模板中使用它。啊,我明白了。使用e.target.href;我还是会得到null代码>。
app.directive('myForm', function() {
return {
controller:function($scope){
$scope.isLoaded = false;
$scope.loadForm = function(e){
console.log(e.target.attr('href')); // error
var form = e.target.attr('href'); // error
$scope.isLoaded = true;
}
},
template: '<div><div ng-if="isLoaded" ng-include="'+ form +'" ></div></div>',
link:function(scope, element) {
}
}
});
TypeError: e.target.attr is not a function
var form = angular.element(e.target).attr('href');