获取点击菜单标题的标题

时间:2015-06-20 14:36:13

标签: angularjs

如何获取点击列表元素的标题?不幸的是,以下代码段会返回“未定义”

HTML

void*b = (int*)&a;

JS

<ul class="nav nav-second-level collapse">
    <li>
        <a href="#" class="menuLink" ng-click="menuClick()" title="Cardiology: Test 1"><span>Echocardiogram</span></a>
    </li>
    <li>
        <a href="#" class="menuLink" ng-click="menuClick()" title="Cardiology: Test 2"><span>Echocardiogram</span></a>
    </li>

2 个答案:

答案 0 :(得分:2)

这是一个简单的解决方案。首先,您应该通过将菜单项存储在范围变量中来使代码具有角度。然后,您可以使用ng-repeat来迭代您的项目。您也可以存储相应的标题,然后通过ng-click引用该标题。

<div ng-controller="MyCtrl">
    <ul class="nav nav-second-level collapse">
        <li ng-repeat="item in listItems"> 
            <a href="#" ng-attr-title="item.title" ng-click="getTitle(item.title)">
                <span>{{ item.name }}</span>    
            </a>
        </li>
    </ul>

function MyCtrl($scope) {
    $scope.listItems = [{
        "name": "Echocardiogram",
            "title": "Cardiology: Test 1"
    }, {
        "name": "Echocardiogram",
            "title": "Cardiology: Test 2"
    }];

    $scope.getTitle = function (title) {
        alert(title);
    }
}

JSFiddle

答案 1 :(得分:0)

您可以使用点击事件。并引用目标元素(<a>)并阅读title属性。

HTML:

<a href="#" class="menuLink" ng-click="menuClick($event)" title="Cardiology: Test 1">

控制器:

$scope.menuLink =function (event){
    var title = angular.element (event.target).attr ('title');
}