2017-08-11 26 views
0

我正在構建一個Django應用程序,並且我希望有一個視圖/函數在每次運行時都將一行html添加到特定div元素的內部html中。我如何讓Django生成或更改DOM元素?

我知道如何用Javascript做到這一點,但後來我需要視圖來運行該腳本每次運行。 有沒有辦法在Python文檔中做到這一點?

+0

您可以使用ajax請求到您運行該腳本的特定URL –

回答

0

您的問題的標題詢問有關在python中創建DOM元素的問題。爲了做到這一點,你views.py內

from django.template import Context, Template 

def in_some_view(request): 
    template = Template('<div class="new-dom-element">Element</div>') 
    ''' 
    You can create elements above. You can even give it Context Variables 
    For example: template = Template('<div class="new-dom-element">{{ context_variable }}</div>') 
    ''' 
    context = Context({'context_variable': your_python_variable}) 
    #By sending the context variable "your_python_variable", you can do anything iteratively. 

    dom_element = template.render(context) 
    #Now you can return this dom_element as an HttpResponse to your Javascript. 
    #Rest of your code. 
    return HttpResponse(dom_element) 

注:我回答這個牢記,你不希望採取的方式外AJAX的域請求。如果是這樣,那麼如果HTML已經顯示在瀏覽器屏幕上,那麼帶上和附加一些數據是非常困難的。這正是爲什麼AJAX是首先創建的。

希望這會有所幫助。謝謝。