Javascript 向uib工具提示html添加内容
为什么这样做很好: 控制器:Javascript 向uib工具提示html添加内容,javascript,angularjs,angular-ui-bootstrap,Javascript,Angularjs,Angular Ui Bootstrap,为什么这样做很好: 控制器: $scope.getHtml = $sce.trustAsHtml("<div>Test</div>"); $scope.getHtml = function (){ var textOutput = "<div>Text</div>"; return $sce.trustAsHtml(textOutput); }; 但它不起作用。当我使用uib toolti
$scope.getHtml = $sce.trustAsHtml("<div>Test</div>");
$scope.getHtml = function (){
var textOutput = "<div>Text</div>";
return $sce.trustAsHtml(textOutput);
};
但它不起作用。当我使用
uib tooltip
而不是uib tooltip html
时,我可以看到包含正确html(未解析)的工具提示,但如果我将其更改为uib tooltip html
,则再次出现错误 在第一个案例中,$scope.getHtml
最终成为一个字符串
在第二个案例中,$scope.getHtml
最终成为一个函数,该函数返回与第一个案例相同的字符串
但是,如果在第二种情况下调用函数,它将起作用,因为它本质上是相同的代码:
$scope.getHtml = function () {
var textOutput = "<div>Text</div>";
return $sce.trustAsHtml(textOutput);
} ()
并通过以下方式使用它:
<div uib-tooltip-html="getHtml()">Test</div>
测试
啊!非常感谢你!花了一整天在这上面:现在我还有一个问题。我已经为它编辑了我的原始帖子。删除模板语法,它应该可以正常工作:test但是我把参数放在函数中的什么地方?$scope.getHtml=function(item){
?我把它添加到了我的答案中。
<tr ng-repeat="object in objectArray">
<td uib-tooltip-html="getHtml(object.value1)">{{object.value1}}<td>
<td uib-tooltip-html="getHtml(object.value2)">{{object.value2}}<td>
<td uib-tooltip-html="getHtml(object.value3)">{{object.value3}}<td>
</tr>
$scope.getHtml = function (value) {
var textOutput = doSomethingWithObjectDataAndCreateHtmlFromIt(value);
return $sce.trustAsHtml(textOutput);
}
$scope.getHtml = function () {
var textOutput = "<div>Text</div>";
return $sce.trustAsHtml(textOutput);
} ()
$scope.getHtml = function (html) {
return $sce.trustAsHtml(html);
}
<div uib-tooltip-html="getHtml()">Test</div>