在Angular中有没有办法访问被点击的元素类型?我在jQuery中有以下内容并且它工作正常,麻烦的是我不知道如何在我被要求查看的Angular项目中执行相应的操作。
Pointee()
如何修改此Angular事件处理程序以像上面的jQuery一样工作?
SafeMatcherCast()
像这样的东西????
// Click action
$(".contactlist").on("click", function(e) {
if (!$(e.target).is(':checkbox') && !$(e.target).is("li:nth-child(1)")) {
var token = $(this).data('token');
window.location.href = "XYZ.php?page=contacts&token=" + token;
}
});
HTML
$scope.eventHandler = function(data) {
window.location.href = "XYZ.php?page=contacts&token=" + data.token;
};
答案 0 :(得分:0)
使用带有element.bind的指令。
app.directive('clickMe', function() {
return function(scope, element, attr, html) {
element.bind('mouseup', function() {
console.log(JSON.stringify(attr));
});
};
});
您的HTML就是这样:
<input type="checkbox" class="check" data-token="{{data.token}}" click-me name="addselect[]">
为复选框返回以下内容:
{"$attr":{"type":"type","class":"class","token":"data-token","clickMe":"click-me","name":"name"},"$$element":{"0":{"ng339":7},"length":1},"type":"checkbox","class":"check","token":"","clickMe":"","name":"addselect[]","$$observers":{"token":[]}}
在指令中,如果您只想获取类型,attr.type将提供它。
checkbox