单击角度上的href后,在div中显示url

时间:2017-10-20 16:29:52

标签: html angularjs

我在Google上搜索,但我无法找到答案。 我想在使用$ http(动态链接)点击网址后显示div中的网址。

例如:

<ul>
    <li ng-repeat="file in files | filter:search as results" ><a ng-href="{{getSrc(file._name)}}" target="_blank">{{file._name}}</a></li> 
    <div>
            **SHOW URL OF CLICKED LINK HERE**
    </div>
  </ul>

   $scope.read = function(){
    var request = $http({
        method : 'GET',
        url : 'request.php', 
    });
    request.then(function(response){
        $scope.files = response.data;
    }, function(error){ 
        alert(error.data);
    });
}

$scope.getSrc = function(src) { 
    return 'files/' + src;
};

尝试了一切,但我无法使其发挥作用。任何帮助将不胜感激!!!

2 个答案:

答案 0 :(得分:2)

我认为你可以点击指向范围内定义的函数的链接,并将链接地址传递给它。然后将其设置为范围变量,并在div中显示范围变量。首先它不会显示,因为你将它初始化为null,但是一旦你点击链接它就会调用ng-click函数传递链接名称并设置变量,现在它将显示。

<ul>
    <li ng-repeat="file in files | filter:search as results" ><a ng-href="{{getSrc(file._name)}}" target="_blank" ng-click="linkClicked(file._name)">{{file._name}}</a></li> 
    <div>
            {{clickedLink}}

    </div>
  </ul>

$scope.clickedLink = null;

$scope.linkClicked  = function(link){
   $scope.clickedLink = link;
}

答案 1 :(得分:1)

尝试修改:

$scope.result;
$scope.getSrc = function(src) {
  $scope.result = 'files/' + src;
  return $scope.result;
};

然后是html:

<div>
  {{result}}
</div>