要解决"angularjs bootstrap标签在第一次动态更改后不再改变"的问题,可以使用ng-bind-html指令来动态更新标签内容。
首先,在HTML中添加ngSanitize依赖,以便使用ng-bind-html指令:
然后,创建一个AngularJS应用程序,并在控制器中使用$scope变量来存储要动态更改的标签内容:
接下来,在JavaScript中定义AngularJS应用程序和控制器,并使用$sanitize服务来处理要动态更改的内容,以防止XSS攻击:
angular.module('myApp', ['ngSanitize'])
.controller('myCtrl', function($scope, $sce) {
$scope.dynamicContent = $sce.trustAsHtml('初始内容');
$scope.changeContent = function() {
$scope.dynamicContent = $sce.trustAsHtml('更改后的内容');
};
});
在上述代码中,我们使用$sce.trustAsHtml方法将HTML字符串转换为可信任的HTML,然后通过ng-bind-html指令将其动态绑定到div标签上。
最后,当点击"更改内容"按钮时,调用changeContent函数来更新$scope.dynamicContent的值,并再次使用$sce.trustAsHtml方法来确保内容是可信任的HTML。
这样,每次点击"更改内容"按钮时,标签的内容都会动态更改。