Sujithrao
Sujithrao

Reputation: 785

How to pass scope variable through ng-click function?

Here when i click on cartDetails the dynamic scope variable x.SmId value need to be passed to the bellow function and in alert box need to display the parameter .How can we do this one in angular js?

<div ng-app="" ng-controller="MyCtrl">
     <div ng-repeat="x in names">
       <div ng-click="cartDetails('{{x.SmId}}')">
        <div>{{x.name}}</div>
       </div>
     </div>
    </div>

<script>
 angular.module('MyApp', [])
.controller('MyCtrl', ['$scope', '$http', function($scope, $http) {
  $scope.search = function(param) {

      $http.get('AngularJs-Response.jsp?mid='+param).success(function(response) {
        $scope.names = response;        
      });

  };
  $scope.cartDetails = function(smid) {
      alert(smid);
      };
}]);
</script>

Upvotes: 3

Views: 14302

Answers (2)

Deepak Singh Solanki
Deepak Singh Solanki

Reputation: 31

I tried to use:

ng-click="cartDetails(x.SmId)"

but it simply x.SmId as string, its not replaced by value. After reading few more articles, I found a solution like below:

<div ng-click="cartDetails('{{x.SmId}}')">

Its a working solution in AngularJS v1.3.9

Upvotes: 3

squiroid
squiroid

Reputation: 14037

Use simple:-

 ng-click="cartDetails(x.SmId)"

Upvotes: 9

Related Questions