根据下拉列表中的选择更改下拉列表名称
问题描述:
我想根据下拉列表中的选择更改导航栏中的下拉列表名称。我发现HTML标签不支持ng-click。我曾尝试过,但它不起作用。帮助我找到解决这个问题的办法。需要使用angularJs的解决方案,但最糟糕的情况是jQuery是可能的。根据下拉列表中的选择更改下拉列表名称
我的代码:
HTML
<div id="navbar" class="navbar-collapse collapse">
<ul class="nav navbar-nav navbar-right">
<li><a href="#">Link</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Current: {{currentApplication}}</a>
<ul class="dropdown-menu" ng-repeat="application in applications" ng-click="changeApplication(application.name)">
<li><a href="#">{{application.name}}</a></li>
</ul>
</li>
</ul>
</div>
角
myApp.controller("navbarController", function ($scope, $http) {
$scope.currentApplication = "default";
var changeApplication = function(name) {
$scope.currentApplication = name;
};
$http({
method: 'GET',
url: 'applications'
}).then(function success(response) {
$scope.applications = response.data,
});
});
答
ng-click="changeApplication
什么也不做,因为你定义的函数为:
var changeApplication = function(name) {
$scope.currentApplication = name;
};
绑定到$scope
as:
$scope.changeApplication = function(name) {
$scope.currentApplication = name;
};