我有一种情况,我想在ng-bind-html
创建的DOM上运行自定义指令。
基本上,我必须自定义html标记的行为,<a>
因为正在加载的html是不安全的,并且当用户单击链接时,我必须click
在jqLite事件发生之前执行某些功能。
因此,我最初的想法是创建一个指令,该指令会修改<a>
我放置指令属性的容器内部任何容器的行为。
正常工作,直到与结合使用ng-bind-html
,我的指令在ng-bind-html
将字符串编译为html并附加到DOM 之前运行。
那么,在运行之后是否可以运行我的自定义指令ng-bind-html
?
演示
HTML:
<div ng-app="myApp" ng-controller="myCtrl">
<div ng-bind="sometext" my-directive>before</div>
</div>
控制器:
angular.module('myApp', []);
angular.module('myApp').controller('myCtrl', function($scope) {
$scope.sometext="stuff here";
});
指示:
angular.module('myApp').directive('myDirective', function() {
return {
priority: 10, // adjust this value ;)
link: function(scope,element,attrs) {
scope.$watch(attrs.ngBind, function(newvalue) {
console.log("element ",element.text());
});
}
};
});
priority
在mg-bind之后使用内部指令内部属性运行代码
问题内容: 我曾经能够用来输出未经消毒的代码(因为消毒发生在服务器端)。 但是现在这个选择消失了吗?我知道我可以使用,但是当不安全易于使用时,将其添加到整个JavaScript上将是一个巨大的痛苦。 我怎么不安全回来? 问题答案: 好吧,仅创建您自己的指令非常简单,这是一个示例。 指令 : 用法 : 演示: http ://jsfiddle.net/cC5VZ/2
问题内容: 我想知道ng-bind-html和bind-html-compile指令之间的区别。例如我给 到ng-bind-html,这会剔除bind-html-compile所没有的样式。我可以知道何时应该使用每个指令。谢谢。 问题答案: bind-html-compile 不是标准的Angular指令,它带有模块https://github.com/incuna/angular- bind-h
我有一个示例 anjularjs 示例,它拉取 sku 详细信息数组,在选择下拉列表中显示价格和名称。现在我在下拉列表中选择了任何选项,它显示SKU名称和价格。 下面是我的选择标签,现在正在显示,sku名称和价格。 以下是我的skulist数据: 所以在这里,我的要求是下拉列表应该包含sku名称和价格,但一旦选择了值,然后只显示sku名称。
问题内容: 我有指令 控制器: 在索引页面上,我有: 每当包含不同的html时,我的自定义服务都会返回 我想做的是每次在指令的内容中推送不同的值以对其进行编译并将其放入html并处理控制器中的click函数时。因为我是AngularJS的新手,所以一段时间以来一直在努力解决这个问题。请帮忙。 问题答案: 您不需要处理$ sce即可达到目的。 您可以将as字符串传递给指令。在指令中编译后,它将起作用
问题内容: 我正在使用angularjs 1.2.0-rc.3。我想将html代码动态地包含到模板中。为此,我在控制器中使用: 在模板中,我得到了: 它适用于常规html代码。但是,当我尝试放置角度模板时,它不会被解释,它仅包含在页面中。例如,我想包括: 非常感谢 问题答案: 此解决方案不使用硬编码模板,您可以编译嵌入在API响应中的Angular表达式。 步骤1. 安装此指令:https : /
问题内容: plnkr链接 我有一个我想将html绑定到它的元素。 这样可行。现在,连同它,我还有一个绑定到绑定的html的指令: 但是带有div和anchor 的指令不求值。我该如何运作? 问题答案: 我也遇到了这个问题,经过几个小时的互联网搜索,我读到了@Chandermani的评论,事实证明这是解决方案。您需要使用以下模式调用“编译”指令: HTML: JS: 您可以在这里看到它的工作提琴