2

I am new to angularjs and javascript.I am using a contextmenu in the text-angular. So, My code is like -

<div contextmenu="meta.contextmenu" class="dropdown contextmenu ">
            <ul class="dropdown-menu dropdown-content" role="menu" ng-if="showdropdownForProject" id="projectAnnotation">
                <li>
                    <a role="menu" href
                    ng-click="sendInfo()">
                    <span>ABC</span>
                    </a>
                </li>
                <li>
                    <a role="menu" href
                    ng-click="sendInfo()">
                    <span>PQR</span>
                    </a>
                </li>
                <li>
                    <a role="menu" href
                    ng-click="sendInfo()">
                    <span>XYZ</span>
                    </a>
                </li>
</div>

So, Here I am not able to get the selected value in the controller . So, How can I get that value , If I click on the ABC, I need this value so that I can send it to backend. Thanks in advance.

Mihai Alexandru-Ionut
  • 47,092
  • 13
  • 101
  • 128
ganesh kaspate
  • 1
  • 9
  • 41
  • 88

2 Answers2

1

You should pass value to sendInfo() method.

<li>              
   <a role="menu" href="" ng-click="sendInfo('ABC')">
        <span>ABC</span>
   </a>
</li>

JS

$scope.sendInfo=function(info){
     console.log(info);
} 
Mihai Alexandru-Ionut
  • 47,092
  • 13
  • 101
  • 128
1

You should create array items for it to use ng-repeat.

Controller:

$scope.items = [
  {
    name: 'ABC'
  },
  {
    name: 'BCD'
  },
  {
    name: 'XYZ'
  }
];

$scope.selectedItem = {};

$scope.sendInfo(item) {
  $scope.selectedItem = item;
  console.log($scope.selectedItem.name);
}

Template:

<div contextmenu="meta.contextmenu" class="dropdown contextmenu ">
  <ul class="dropdown-menu dropdown-content" role="menu" ng-if="showdropdownForProject" id="projectAnnotation">
      <li ng-repeat="item in items track by $index">
          <a role="menu" href
          ng-click="sendInfo(item)">
          <span>{{item.name}}</span>
          </a>
      </li>
    </ul>
</div>
Huy Chau
  • 2,178
  • 19
  • 26