簡體   English   中英

如何在Angular JS中給$ this

[英]How ot give $this in Angular js

我在網格中顯示數據,單擊活動按鈕或非活動按鈕時,我必須更改按鈕,功能正常,對於更改圖標,我找不到活動的單擊按鈕,在jquery中我們可以使用“ this ”,但是在Angular JS中不知道,請幫助

 $scope.activeSource = function(datasource,status)
                {

                        $scope.loading = true;
                        $scope.activeInfo = {
                                datasource:datasource,
                        };
                        $scope.alerts = [];
                        if(status == "Stopped")
                        {
                            $scope.entityService.activeInfo($scope.activeInfo,
                            function( msg ) // success
                            {
                                $scope.loading = false;
                                $rootScope.successMsg.push(msg);
                                $('.icon-play').hide();  // this.
                                $('.icon-stop').show();  // this.  no idea

                            },
                            function( msg ) // error
                            {
                                $scope.loading = false;
                                $rootScope.successMsg.push(msg);
                            }
                        );

您不需要使用this來訪問按鈕。 而是在您的控制器中創建一個JavaScript對象,該對象包含按鈕的所有屬性。 像這樣:

$scope.myButton = {
  src : 'foobar.png',
  isVisible : true
};

然后,像這樣定義您的按鈕:

<img ng-src="myButton.src" ng-show="myButton.isVisible" />

現在,當您想要修改按鈕的任何屬性時,只需更改javascript對象myButton ,angular將負責更新實際按鈕。

例如,如果要隱藏按鈕:

// you don't need to do this
// $('#myButton').hide();

// instead just do this
$scope.myButton.isVisible = false;

同樣,您也可以更改圖像的src。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM