gpt4 book ai didi

javascript - ng-bind-html 不适用于输入标签

转载 作者:可可西里 更新时间:2023-11-01 01:37:02 24 4
gpt4 key购买 nike

我试图将 HTML 存储在范围变量中,然后在模板 View 中使用它。当我阅读如何以 Angular 执行此操作时,我遇到了 ng-bind-html .在那里我注意到当我用 <a> 绑定(bind) html 标签时, <strong>等..它有效。但我无法添加 <input>标签。

意思是,这个有效:

$scope.myHtml = '<strong>This is <a hreaf="#">Something</a></strong>';

模板:

<p ng-bind-html="myHtml"> </p>

但这不起作用:

$scope.myHtml = '<input type="text" />';

模板:

<p ng-bind-html="myHtml"> </p>

以上只是一个简化的示例,仅供演示之用。我的问题是:

1) 标签是否不适用于 ng-bind-html 指令?

2) 如果没有,我如何通过 html 绑定(bind)输入标签以便将其插入到 View 中?

最佳答案

您收到 $sce:unsafe 错误...

这意味着你应该使用 ng-bind-html-unsafe 但是新版本的 angularjs 不再包含这个指令所以你应该使用 $sce.trustAsHtml()像这样……

$scope.trustedInputHtml = $sce.trustAsHtml('<input type="text" />');

但是这样你就不能将范围变量绑定(bind)到你的 html 所以最好的方法是编写一个可以用 ng-bind-html-unsafe 替换的指令...

这里正在工作PLUNKER对于 $sce 和指令示例...

关于javascript - ng-bind-html 不适用于输入标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22808062/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com