![](/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.