有没有办法从元素

时间:2016-09-21 15:08:15

标签: angularjs

我想在活动元素上找到模型的名称。基本上我有document.activeElement如何找出它的模型是什么。

<input ng-model="myModel">

所以在上面的控件中,如果它是活动的,我怎么能够发现我们在myModel的ng-model元素中。这在技术上是添加id或名称的解决方法,但如果我可以

,我宁愿不这样做

另外,这个代码在控制器中不是指令。

3 个答案:

答案 0 :(得分:1)

这是Fiddle
您需要获取代码中的注释中描述的元素对象,然后使用attr

访问它
// get element
var result = document.getElementsByTagName("input")[0];

// get object using jQLite or jQuery
var ele = angular.element(result);

// access 'ng-model' as 'attribute'
alert(ele.attr('ng-model'));

注意:此处仅显示一个输入元素。使用适当的类/元素/属性selector来获取您想要定位的正确元素。

答案 1 :(得分:0)

input / element在Angularjs中将绑定一个ng-model.Without使用id或类来获取元素DOM可以使用$('[ng-model =“Model”]')但是如果模型是在ng-repeat下

如果你写 并且要使元素使用$('[ng-model =“name”]'),它将从DOM中注入该特定元素。

答案 2 :(得分:0)

使用document.activeElement,您可以像这样访问返回元素的属性列表:

var nameOfModel = document.activeElement.attributes['ng-model'].value;