如何将console.log的值传递给django视图



我看到了很多回复,但都不符合我的需求。基本上,我试图通过JavaScript获得href的值,并且我需要将其传递给我的django视图,当我执行console.log时,这是我获得的输出

http://localhost:8000/#vert-tabs-Personal localhost:8000:316:21
#vert-tabs-Personal localhost:8000:317:21
http://localhost:8000/#vert-tabs-Career localhost:8000:316:21
#vert-tabs-Career localhost:8000:317:21
http://localhost:8000/#vert-tabs-Finances localhost:8000:316:21
#vert-tabs-Finances

这是迄今为止触发输出的脚本

<script>
$(".nav-link").on('click', function(e){
console.log(e.target.href);
console.log(e.target.hash);
});
</script>

现在,将e.target.hash值传递给我的django视图的最佳方式是什么。我在考虑jquery或ajax,但老实说我不知道。如有任何帮助,我们将不胜感激。提前感谢您。。。

你的问题有点模糊,你想实现什么,但我想说有几种方法:

  1. 通过表格

大概你在这个页面上有某种表单。如果您在提交表单时只需要django视图中的值,那么请包含一个input标记(它可以隐藏,所以没有人看到它(,然后在需要时通过Javascript更新它的值。然后,视图将接收该值,因为它将成为提交表单的一部分。

请参阅此处设置<input>值:如何通过JavaScript设置输入隐藏字段的值?

  1. 通过ajax调用

您可以有一个端点将其发送到,在那里您可以将其填充到ajax调用的body中,这可能是您正在使用的视图的一部分,尽管通常最好将这些东西分开,并有特定的视图来处理ajax内容(或者至少这是我的经验(。

而且,既然你说你想要这个";在您看来";,我建议选项1对你来说是最简单、最干净的选项。

<input>标记添加到模板中,使其隐藏,并使用JS设置其值,然后在处理提交时,您将在视图中看到它。

最新更新