来自控制器的视图上下文中的dom元素

我有一个角度视图的表格。 在表单上的按钮中,我添加了一个事件,使用$ http向服务器发送请求。 在将请求发送到服务器之前,我需要使用jQuery Validatevalidation表单。

要validation表单,我需要控制器中表单的dom引用。 我的应用程序中已经有了jQuery。 所以可以使用表格的参考

$(selecter) or angular.element($(selecter)) 

但在这两种情况下,它都会搜索完整的文档以获取元素的引用。 而不是我需要在视图的上下文中搜索元素,这将提高性能。

我已经看到在角度中使用$ element。 但后来我发现不建议使用$ element,并且可能会在新版本的angular中折旧。 当我试图在控制器中获取$元素时,我收到了一个错误。 所以我猜它已经贬值了。

那么从控制器的视图上下文中获取dom元素的最佳方法是什么?

正如米卡莱所说的那样。 要使用任何元素进行操作,您必须创建指令(这是有角度的方式..)

举个例子:

  • html
  • 指示

     app.directive('selectAll', function () { return { restrict: 'A', link: function(scope, element, attrs) { element.on('click', function() { this.select(); }); }; }); 

该指令只选择文本元素中的所有文本。

更新:

我为你创造了plunker 。 这是你要求的吗?

更新2

我刚才意识到,我们根本不需要eval。 我不知道,为什么我把它放在那里。 Eval也可能有害。

看看这个羽毛球员 。

不建议在控制器的视图上下文中使用dom元素。 要访问dom,您应该创建角度指令。