2014-06-23 24 views
0

我需要使用ng-bind-html解析字符串。這個字符串包含一些自定義的html標籤。在使用ng-bind-html進行解析時,會給我一個$ sanitize:badparse的錯誤。如何在angularjs中使用ng-bind-html解析自定義html元素

請參閱搗鼓錯誤:http://jsfiddle.net/8zS4h/2/

在閱讀中計算器問題,並在谷歌,我發現,有可能是一個解決方案,如果我用$sce.trustAsHtml()

這解決了我的錯誤問題,但無法解析我的自定義html元素。 你可以在這裏看到這個更新的小提琴:http://jsfiddle.net/8zS4h/3/

我很努力地找到解決方案。

編輯: 只需添加更多的信息,我正在從RSS提要這個字符串,所以有時它可以有"<http>""<http"標籤也。這是失敗的地方。 因此,如果字符串是像<http://www.<em>whitehouse</em>.gov/omb/circulars/a076/應該給像http://www.<em>whitehouse</em>.gov/omb/circulars/a076/

回答

0

油井產量,我設法工作標籤,如錨,下劃線和大膽的沒有問題,請看:

Fiddle

angular.module('ngBindHtmlExample', ['ngSanitize']) 
    .controller('ngBindHtmlCtrl', ['$scope', function ngBindHtmlCtrl($scope) { 
    $scope.myHTML = 
     '<a href=\"http://google.com\">link</a> contests <u>of OMB</u> <b>Circular</b> A-76'; 
    }]) 
    .filter('to_trusted', ['$sce', function($sce){ 
     return function(text) { 
      return $sce.trustAsHtml(text); 
     }; 
}]); 

好像它的正確解析

+0

這很好,但如果我有像「」或「 Mayank

+0

標籤它可以正常工作,你只需要使用c orrect語法。例如。 很好,但是這個''和結尾元素 – Marcus

+0

這是一個問題,我們從rss feed獲取這個字符串,並在將它插入到數據庫之前,我們用前50個字符截斷字符串。現在它可以有一個結束'<'或不能。謝謝你的評論。 – Mayank