编辑:每个人都使用各种切线,但问题仍然存在 - 如何在角度控制器中获取html元素的属性?
这是一个plnkr尝试:http://plnkr.co/edit/0VMeFAMEnc0XeQWJiLHm?p=preview
$( document ).ajaxComplete(function( event, xhr, settings ) {
console.log(xhr.responseText);
});
如果您需要确信这实际上是必要的 - 我需要找到用户滚动div的时间,如下所示:http://jsfiddle.net/rs3prkfm/请注意,这与问题无关,只是一个场景。问题很简单 - 我如何获得属性的值?
参考文献:
无用的官方文档:https://docs.angularjs.org/api/ng/function/angular.element
唯一有用的链接仍然不起作用:http://mlen.io/angular-js/get-element-by-id.html
答案 0 :(得分:1)
您应该使用指令操作DOM。控制器应该只操纵应用程序的数据并将其提供给html。
如果您对Controller进行直接操作,则不能将多个视图绑定到控制器。此外,如果你更改html中一个标签的id,并且你直接在你的控制器中操作它,控制器将会中断。
阅读本文:
http://ng-learn.org/2014/01/Dom-Manipulations/
希望它有所帮助。
答案 1 :(得分:1)
您可以使用元素api https://docs.angularjs.org/api/ng/function/angular.element
但是,应该只有极少数情况下你真的需要它。
答案 2 :(得分:1)
使用angular.element:
var myElem = angular.element("#testDiv"); // here you get your div
var myAttr = myElem.attr("name"); // you get: "testDiv"
请记住,使用jqlite有限制。如果你想要jquery元素的完整功能,请导入一个完整的" jquery.js"在导入角度脚本之前。
但是,要操纵DOM,你应该使用大多数答案所述的指令。