我正在AngularJS中编写一个指令,我需要做的一件事就是找到表单中的所有控件并迭代它们.
如果加载了jQuery,我会这样做:
var inputs = element.find(".ng-invalid,.ng-valid"); inputs.each(function () { var i = $(this); });
但由于它没有加载我只有Angular我只能想做类似的事情:
var inputs = element.find("input"); //for loop thru this var selects = element.find("select"); //for loop thru this //....etc
有没有更好的方法使用jQLite来实现这一目标?
解决方法
如果支持IE7或更早版本是
not a requirement,则可以使用Element的
querySelectorAll方法:
var controls = element[0].querySelectorAll('.ng-invalid,.ng-valid'); [].forEach.call(controls,function (ctl) { var c = angular.element(ctl); ... });