python - 没有呈现响应的 Django 视图
问题描述
我想使用 Button 通过 URL 将 Integer 传递给我的 views.py。我希望views.py 中的这个函数不加载任何新模板或显示HttpResponses。
有没有办法通过按一个按钮来调用这个函数,而不是重新加载一个新页面?
这是 HTML 模板中的按钮:
<a button type="button" class="btn btn-secondary" href="../../frage1f1/1/">1</a>
这是 urls.py 部分:
path('frage1f1/<int:f1>/', views.frage1f1),
这是views.py中的Python方法:
def frage1f1(request, f1):
collection = database["Survey_1"]
collection.update_one({"_id": ObjectId(document_id)}, {"$set":{Frage1: f1}}, upsert= True)
return HttpResponse("Frage 1 beantwortet")
我只想将整数传递给函数而不是重新加载新页面。这可能吗?
我对此很陌生,非常感谢您提供任何建议。
提前致谢。问候
解决方案
是的,一种解决方案是使用 AJAX,然后向服务器发送请求,但不会重新加载页面。使用 jQuery 的教程
使用 jQuery 的示例(您已包含jQuery 库以使其工作):
内部模板
<a button type="button" class="btn btn-secondary" href="#">1</a>
<script type="text/javascript">
$(document).on('click', 'a.btn', function(){
//get the number inside button
number = $(this).html();
//send ajax request to the server
$.ajax({
url: "../../frage1f1/" + number + "/",
success: function(result){}
});
});
</script>
推荐阅读
- isabelle - 量化 Isabelle 中句子的特定部分
- javascript - JavaScript:当速度与时间相关时,如何计算移动精灵边界的偏移量?
- node.js - UseState 方法在表单中将文件传递到后端
- java - 如何在 JDA 4 上添加表情符号作为状态?
- r - 使用汇总并从 dplyr 按组计算几列的非`NA`
- spring - 为什么我的弹簧控制器没有被调用?
- javascript - 有没有办法可以使用 React Native 从 excel 文件中读取数据?
- python - 使用 Pillow 和流线型,图像未定义错误,但在 Windows 上
- php - 如何用 PHP 打乱单词
- google-apps-script - 尝试使用独立脚本时出现“找不到脚本函数”