我只是有一個關於如何實現DRY與JavaScript生成html的動態的問題。我有一個動態加載並填充由Django模板一拉Javascript/Django設計模式
{{ tag.title }}
{% if request.user.is_authenticated %}
<a name="del-tag" data-id="{{ tag.id }}" class = "tag-x" title="Remove Tag" href="#">x</a>
{% endif %}
現在元素的列表,我有一些JavaScript代碼也通過AJAX加載新的標籤。這裏的相關部分:
var newTag = "<span class = \"tag\">" + tagName + "<a name=\"del-tag\" data-id=\"" + tag_id + "\"" +
"class = \"tag-x\" title=\"Remove Tag\" href=\"#\">x</a></span>";
$('#tags').append(newTag);
我可以避免在javascript中重複HTML嗎?
謝謝。
但如果沒有元素開頭呢?我將沒有dom元素克隆。 – 2011-04-07 17:32:10
嗯,這是一個有趣的問題。我無法真正想到我喜歡的解決方案,這也是乾的。我現在唯一能想到的就是創建一個定製的Django標籤或小部件,它允許您根據傳遞給它的值生成所需的HTML標籤。然後,您可以渲染一個隱藏的HTML標記,以後可以克隆。我並沒有真正搞亂創建自定義標籤或小部件,所以這都是理論。 – solartic 2011-04-08 05:13:35