![](/img/trans.png)
[英]How to set variable inside django template with javascript and pass it to views.py?
[英]how to pass javascript variable value to views.py function in django?
我試圖將我的html頁面中從javascript標簽生成的字符串發送到views.py函數。 我將使用該值將其呈現到另一個html頁面,其他javascript將使用它。
這是解析json數據的變量:
var url = data.result.docs[i].source.enriched.url.url;
我想在views.py中向我的函數發送“url”,但我無法找到方法。
此外,我想保留一個鏈接,以便當用戶點擊它時,“url”傳遞給views.py,我的函數將其發送到其他html文件。
sjd += "<br/>" + data.result.docs[i].source.enriched.url.title +
'<a href="/rawHtmlText/url">' + ' Read more' + '</a>' + '<br>'
這是我希望在我的頁面中提供的一種鏈接。 我知道urls.py應該有一個合適的模式,但我無法搞清楚。
可能是jQuery可以使用,但我是這個領域的菜鳥,所以有點卡在這里。
請指導我。
最簡單的方法可能就是構建一個AJAX查詢。 嘗試這樣的事情:
<script type="text/javascript">
$(document).ready(function() {
var url = data.result.docs[i].source.enriched.url.url;
$("#send-my-url-to-django-button").click(function() {
$.ajax({
url: "/process_url_from_client",
type: "POST",
dataType: "json",
data: {
url: url,
csrfmiddlewaretoken: '{{ csrf_token }}'
},
success : function(json) {
alert("Successfully sent the URL to Django");
},
error : function(xhr,errmsg,err) {
alert("Could not send URL to Django. Error: " + xhr.status + ": " + xhr.responseText);
}
});
});
});
</script>
假設您的頁面上有一個按鈕,如下所示:
<button type="button" id="send-my-url-to-django-button">Send URL to Django View</button>
單擊該按鈕應該將url
發送到您的Django視圖。 然后在Django端,您可以像這樣訪問url
:
def process_url_from_client(request):
url = request.POST.get('url')
是的,您只能使用錨標記,但在這種情況下,您將發送這樣的數據
http://host/path_to_view.py/urlValueToSend 。 這將是一個簡單的get請求,url將被發送到服務器您可能需要ro編碼url,因為它包含特殊字符
var val = EncodeURI(url);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.