![](/img/trans.png)
[英]How to pass variables/functions from javaScript to Python and vice versa?
[英]How to use javascript variables with django or vice versa?
當用戶單擊按鈕時,我嘗試使用JavaScript生成1到132(含)之間的隨機數。
到目前為止,一切都很好,它產生了值,我能夠獲得所需的輸出。
問題:我是在自定義Django過濾器(或任何稱為它的過濾器)中使用生成的值。 讓我用我的代碼更好地解釋一下:
<script type="text/javascript">
function random_generator()
{
var rand = [];
var i;
var j;
var text = "";
for(i = 0; i < 5; ++i)
{
rand[i] = Math.floor((Math.random() * 132) + 1);
text += rand[i];
}
document.getElementById('rand1').innerHTML = text; //Just trying to see if the numbers are generated properly
var text2 = "{%for i in allb %}{%if i.id == " + text + "|add:0 %}<p>{{ i.name }}</p>{% endif %}{%endfor%}";
document.getElementById('rand2').innerHTML = text2;
document.writeln(rand[0]);
}
</script>
這是我嘗試做的其他事情:
<div id="b005" class="modal">
<div id="rand1"></div>
<div id="rand2"></div>
{%for i in allb %}
{%if i.id == **WANT TO USE THE JS VARIABLE HERE**|add:0 %}
<p>{{ i.name }}</p>
{% endif %}
{%endfor%}
</div>
注意: allb
是我從views.py中傳遞的對象
還有其他方法可以做到嗎?
先感謝您 :)
正如Daniel所述,您必須首先了解幕后情況。 django模板僅存在於服務器上,並且所有模板代碼都在該服務器上執行。 就像您在random_generator()腳本中所做的那樣,此模板代碼也可以用於非HTML呈現。
但是瀏覽器僅收到模板的評估版。 因此,無法將django模板代碼(服務器端)與客戶端js進行比較。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.