如何在javascript中通过id获取angularjs中的元素?

如何在javascript中通过id获取angularjs中的元素?,javascript,twitter-bootstrap,angularjs,Javascript,Twitter Bootstrap,Angularjs,假设我有一个按钮: <button type="submit" value="Send" id="btnStoreToDB" class="btn btn-primary start" ng-click="storeDB()" ng-disabled="!storeDB_button_state" > <i cla

假设我有一个按钮:

<button type="submit"
        value="Send" 
         id="btnStoreToDB"
         class="btn btn-primary start"             
         ng-click="storeDB()"
         ng-disabled="!storeDB_button_state"
         >
                <i class="icon-white icon-share-alt"></i>
                <span>Store to DB</span>
            </button> 
但是,
$scope.btnStartUpload
未定义。假设有其他方法获取此按钮

求求你,救命

angular.element("#btnStoreToDB");
但这里有更“棱角”的方式

JS

var app = angular.module('plunker', []);

app.controller('MainCtrl', function($scope) {
  $scope.loading = false;

  $scope.send = function(){
    $scope.loading = true;
    setTimeout(function(){
      alert('finished');
      $scope.$apply($scope.loading = false);
    }, 2000);

  };
});
HTML

<button ng-click="send()">
      <img ng-show="loading" src="http://farmville-2.com/wp-content/plugins/farmvilleajpl/img/loadingbig.gif" width='10'>
      Send!    
</button>

发送!
p.s.来自cutom源的图像

p.p.s就我个人而言,我通常使用Twitter引导,有一种方法可以更轻松地显示微调器。像


这是一个很好的问题,也是一种非常普遍的情况

执行此操作的方法是在按钮上或按钮内使用
ng show
ng hide
ng class

一个想法可能是使用
ng类
,如下所示:

<button ng-class="{ useSpinner: btnStoreToDB }">...</button>

现在您的视图和控制器已经分离,您正在以角度的方式进行操作。

您应该在jQuery中说您只需执行
$('#…')
.JavaScript>jQuery;-)您应该添加更多解释,说明这是如何解决问题的以及原因。这将是一个更好的答案。-1,我对使用id不感兴趣(参见问题)。您的示例显示了如何将元素添加到角度环境。对不起,你问我怎样才能像JS一样获得一个元素。我给了你答案。Thanks@MaximShoustin,增加了一点角度。对不起confusion@HugoDozois,你认为这个(更新的)版本有什么意义?
<button ng-class="{ useSpinner: btnStoreToDB }">...</button>
<button ...>
    <i class="icon-white icon-share-alt"></i>
    <span>Store to DB</span>
    <div class="spinner" ng-show="btnStoreToDb">...</div>
</button>