javascript - Django 模板,在单击按钮时调用类内的函数

标签 javascript jquery python django python-3.x

我试图在用户单击按钮时调用我所拥有的类中的函数。 这是我的观点:

def index(request):
#return HttpResponse ('Hello world!')  
return render(request, "Articol/index.html", {'WallStreet': WallStreet.objects.all(), 'Add': CreateWallStreetArticle()})

因此,在模板上,这是按钮的代码:

<button id="about-btn"> Click to add new articles to the database</button>

<script>
        $(document).ready( function() {

            $("#about-btn").click( function(event) {
                {{ Add.AddArticle() }};
            });
        });
</script>

如您所见,该函数位于 CreateWallStreetArticle() 类内部 使用我拥有的代码,当我按下按钮时什么也不会发生,并且我无法理解调用函数 AddArticle()

的方法

如果在 View 上我将返回渲染更改为:

return render(request, "Articol/index.html", {'WallStreet': WallStreet.objects.all(), **'Add': CreateWallStreetArticle().AddArticle()**})

它调用该函数,但不是在单击按钮时调用,当我重新加载页面时它会自动调用它,但我不希望这样:-)

谢谢!

最佳答案

我认为正确的方法是使用 Ajax。 Ajax 代表异步 Javascript,这正是我们所需要的。您需要做的是将 js 函数绑定(bind)到您的按钮,该函数将向您提供的 url 发送 ajax 请求,该 url 将通过您的 urls.py 进行映射并调用您需要的 View 。在 View 中,您可以运行任何您想要的 python 代码,并返回带有您想要的数据的 json 响应。

我建议您阅读Tango with Django ajax tutorial ,它提供了使用 ajax 和 django 的基本示例,例如按钮示例。如果您有任何疑问,请随时询问他们。

关于javascript - Django 模板,在单击按钮时调用类内的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34590184/

相关文章:

javascript - ASP.NET 无法加载 CSS 和 Javascript 文件

python - 尝试从 pyevolve 导入时出现 "AttributeError: fileno"

javascript - 为什么 js 脚本在 django 网站上不起作用?

javascript - 单击链接jquery时更改事件li

javascript - AngularJS POST 空请求?

javascript - else if 在ajax登录表单中不起作用

jquery - 使用与浏览器无关的方式来制作带有音频的网络幻灯片有哪些选项?

jquery - 使用 jQuery 跟踪链接点击的问题

javascript - 在 JavaScript 中使用quadprog 进行投资组合优化约束错误

python - Scrapy 没有按照 allowed_domains 过滤结果