2016-04-11 3 views
0

Я принес данные JSON, которые выглядят примерно так:изменить неправдоподобные данные JSON с помощью Angularjs

{ 
    "id": "154", 
    "user_id": "1445674241", 
    "title": "Power of one", 
    "content": "<p><img style=\"display: block; margin-left: auto; margin-right: auto;\" src=\"/photo.png\" alt=\"Power of one\" width=\"455\" height=\"567\" /></p>\n<p>&nbsp;</p>\n<p>One is really powerful, you are one, God is one, earth is one. Love the one.<img style=\"display: block; margin-left: auto; margin-right: auto;\" src=\"/photo.png\" alt=\"Power of one\" width=\"455\" height=\"567\" /></p>", 
    "num_views": "0", 
    "votes_up": "1", 
} 

Я хочу изменить атрибуты всех IMG тегов (например, дописывания ЦСИ, высота изменение & ширина) с использованием угловых js.

Я также передаю html-код, используя ng-bind-html в своем контроллере. И функция для этого:

$scope.renderHtml = function (html_code) { 
    return $sce.trustAsHtml(html_code); 
}; 

Помогите мне изменить атрибут img-тегов.

+1

В чем вопрос? – rupampatel

+0

Хотите изменить атрибуты img-тегов. –

ответ

0

Я думаю, вы должны получить свои грязные руки, работая непосредственно на data.content строку ...
Что-то вроде этого:

var newWidth = 123; 
data.content = data.content.replace(/(img.*?width=")(.*?)(")/g, function(c1, c2, c3) { return c1 + newWidth + c3; }); 
+0

Что такое c1, c2 и c3 ?? –

+0

содержание каждой из трех групп захвата ('(...)'), которые мы использовали в примере ... Возможно, вы найдете полезное чтение http://www.w3schools.com/jsref/jsref_obj_regexp.asp. .. – MarcoS

0

Вы можете создать какой-то пользовательский фильтр для этого, для экс- если я м получить ссылку с моего юность ввода данных, и я хочу, чтобы изменить его перед вложением в моей PAGE-

myApp.filter('trustedURL', ['$sce', function($sce){ 
    return function(input) { 
     return $sce.trustAsResourceUrl(input); 
    }; 
}]); 

myApp.filter('youtubeEmb', ['$sce', function($sce){ 
    return function(input) { 
     var shortYou = input.match(/youtu.be/g); 
     if(shortYou){ 
      return input.substring(0,input.indexOf('?')).replace(shortYou,"youtube.com/embed"); 
     }else{ 
      return input.substring(0,input.indexOf('&')).replace("watch?v=","embed/"); 
     } 
    }; 
}]); 

мой HTML-

<iframe src="data.uri | trustedURL | youtubeEmb"></iframe>

Здесь был url, аналогичным образом вы можете создать некоторую функцию для img tag attrs.

Смежные вопросы