簡體   English   中英

將數據從 TextField 傳遞到網頁

[英]Passing data from TextField to webpage

我在 Django 中有一個帶有TextField的模型。 我想通過該TextField將信息傳遞到網頁上

return render(request, 'index.html', {
    'textFieldValue': textFieldValue,
    'context': RequestContext(request),
})

我遇到的問題是,由於TextField可以包含新行,因此當它通過執行以下操作傳遞到我的網頁時:

var textFieldValue = "{{ textFieldValue }}";

它成為了:

var textFieldValue = "Testing string is this. 
New line abcde
Second new lineabcde";

由於TextField中有幾行並因此破壞了 JavaScript var 模板,這將返回錯誤。有沒有辦法解決這個問題? 我是否需要將字符串拆分為每行的數組,然后將其傳遞到我的網頁中,並有一個函數來解析它?

我也試過:

var textFieldValue = "{{ textFieldValue|safe }}";

但它是一樣的。

我想這樣做是因為我想將它粘貼到我頁面上的textarea ,它看起來像TextField應該在 Django 管理中顯示的內容。

我想將來會出現諸如"'引號和@#等符號的問題。

我這樣做的最佳方法是什么?

您可以使用 Django 內置的escapejs過濾器( 此處為文檔):

{{ value|escapejs }}

例如,如果值為"testing\\r\\njavascript \\'string" <b>escaping</b>" ,則輸出將為"testing\\\ \\\ javascript \\\'string\\" \\\ escaping\\\ "

注意:這不會使字符串在 HTML 中使用安全,但可以在使用模板生成 JavaScript/JSON 時保護您免受語法錯誤的影響。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM