使用django模板处理html标签

时间:2014-10-15 18:06:32

标签: django django-templates

在我的页面上,我显示来自3-rt派对页面的供稿,并显示文章我使用removetags:"b br span a table tbody tr td div strong"删除所有unnetsesery html标签,但有些文章有img标签,我喜欢保留此但我喜欢向此标记添加额外信息,例如itemprop="image"。 是否有任何方式允许我“注入”itemprop =“image”到准备好的预定义<img alt="title of image" src="http://example.com/media/k2/items/cache/b2bfbef5bf07350b746434a35b46d416_L.jpg" />

例如我在模板中查询文章:

<div class="media-body">
  <span itemprop="articleSection">{{ object.content|removetags:"b br span a table tbody tr td div strong"|safe|truncatewords_html:56 }}
  </span>
</div>

给了我以下信息:

<div class="media-body">
<span itemprop="articleSection">
<p>
<img class="attachment-full wp-post-image" width="256" height="256" src="http://example.com/wp-content/uploads/2014/10/tt.jpg" alt="tt">
(example.nl) – w końcu zaplanowano rozbudowę lotniska w Eindhoven. Przedsięwzięcie będzie realizowane etapami, tak aby w 2020..............
</p>
<p>Het bericht Dodatkowe loty z lotniska w Eindhoven verscheen eerst op Popolsku.</p>
</span>
</div>

如何将额外属性itemprop="image"添加到img标记

1 个答案:

答案 0 :(得分:0)

如果您解释具体问题,展示一些代码或提供更多信息,我可以向您展示Django的解决方案,但我们可以探索其他解决方案。

我们假设我们有这个图片文件:

<img id="image_id" alt="whatever" src="http://something" />

JQuery的

通过JQuery,您可以使用.attr()向现有元素添加属性,在这种情况下我们可以这样做:

$('#image_id').attr('itemprop','image')

的JavaScript

在JavaScript中,我们有.setAttribute()

document.getElementById("question-header").setAttribute('itemprop', 'image')

以这两种方式,图像将结束如下:

<img itemid="image_id" alt="whatever" src="http://something" itemprop="image"/>

<小时/> 要用Django做这样的事情我会说你应该创建自己的模板标签,我可以在Django中显示更多信息。