在javascript中为变量创建超链接

时间:2017-09-22 07:45:17

标签: javascript angularjs

$scope.msg = "Updated Successfully. Id: " +  $scope.id;

在成功创建任何数据后的上述代码中,消息将显示为“已成功更新.Id:13456”。我想将ID作为超链接。我试过......

$scope.msg = "Updated Successfully. Id: " + document.write( '<a href="#test_update/' + $scope.id + '" title="Click to view Details" target="details">' + $scope.id + '</a>');

但它不起作用。请提出任何建议......

2 个答案:

答案 0 :(得分:2)

您可以使用AngularJS中的Strict Contextual Escaping来实现此目的。为此,您需要在控制器中注入$sce服务。

<强>控制器

angular.module('testApp', [])
.controller('AppController', ['$sce',
  function AppController($sce) {
    $scope.msg = $sce.trustAsHtml("Updated Successfully. Id: <a href='#test_update/" + $scope.id + "' title='Click to view Details' target='details'>" + $scope.id + "</a>");
  }]);

并使用ng-bind-html在模板中将此HTML呈现为安全的HTML。

<强> HTML

<span ng-bind-html="msg"></span>

答案 1 :(得分:1)

或者只是你可以这样做

<a ng-href="#test_update/{{id}}">{{id}}</a>

在你的情况下

<span ng-if="id">Updated Successfully:  <a ng-href="#test_update/{{id}}" title='Click to view Details' target='details'>{{id}}</a> </span>

检查ng-href

的Angularjs文档