Django:如何从模板调用视图函数?
我有一个关于如何从模板HTML按钮调用视图函数的问题?像onclick函数? 以下是模板:Django:如何从模板调用视图函数?,django,templates,view,Django,Templates,View,我有一个关于如何从模板HTML按钮调用视图函数的问题?像onclick函数? 以下是模板: <input id="submit" type="button" onclick="xxx" method="post" value="Click" /> 非常感谢。一个选项是,您可以将提交按钮包装成表单 大概是这样的: <form action="{% url path.to.request_page %}" method="POST"> <input id="s
<input id="submit" type="button" onclick="xxx" method="post" value="Click" />
非常感谢。一个选项是,您可以将
提交
按钮包装成表单
大概是这样的:
<form action="{% url path.to.request_page %}" method="POST">
<input id="submit" type="button" value="Click" />
</form>
<button class="btn btn-primary" onclick="location.href={% url 'logout'%}">Logout</button>
并在submit
侦听器上
$(function(){
$('form').on('submit', function(e){
e.preventDefault();
$.ajax({
url: $(this).attr('action'),
method: $(this).attr('method'),
success: function(data){ $('#target').html(data) }
});
});
});
您可以将输入放入如下表单中:-
<script>
$(document).ready(function(){
$(document).on('click','#send', function(){
$('#hid').val(data)
document.forms["myForm"].submit();
})
})
</script>
<form id="myForm" action="/request_page url/" method="post">
<input type="hidden" id="hid" name="hid"/>
</form>
<div id="send">Send Data</div>
$(文档).ready(函数(){
$(文档)。在('单击','发送',函数()上){
$('#hid').val(数据)
document.forms[“myForm”].submit();
})
})
发送数据
假设您希望在用户单击“单击”按钮时从html文本框中的用户输入中获取一个值,然后调用您在mypythoncode.py中编写的python函数(mypythonfunction)。请注意,“btn”类是在css文件中定义的
在templateHTML.html中:
<form action="#" method="get">
<input type="text" value="8" name="mytextbox" size="1"/>
<input type="submit" class="btn" value="Click" name="mybtn">
</form>
这个怎么样:
<a class="btn btn-primary" href="{% url 'url-name'%}">Button-Text</a>
该类包括主按钮的引导样式。例如,注销按钮可以这样编写:
<form action="{% url path.to.request_page %}" method="POST">
<input id="submit" type="button" value="Click" />
</form>
<button class="btn btn-primary" onclick="location.href={% url 'logout'%}">Logout</button>
要删除所有数据,请执行以下操作:
HTML文件
class="btn btn-primary" href="{% url 'delete_product'%}">Delete
将上述代码放在锚定标记中。(a标签!)
url.py
path('delete_product', views.delete_product, name='delete_product')]
视图.py
path('delete_product', views.delete_product, name='delete_product')]
def delete_产品(请求):
如果request.method==“GET”:
dest=Racket.objects.all()
删除目标()
返回呈现(请求“admin_page.html”)
是的。。这就是ajax提交所做的。你的问题不清楚,所以我补充了两个答案。我想知道有没有办法在Django中执行多线程?以下是问题:可能是你正在寻找的。这与这个问题有什么关系?@karthikr您必须将第一个片段中的输入更改为type=“submit”这是一个非常好的答案-令人惊讶的是没有更多的投票。。。你在自己的项目中使用过这个吗?我很高兴它很有用。是的,我在Github上传了一个项目,我在那里使用它。注意,GET和HEAD请求应安全/可靠。输入后{%csrf_token%}怎么样?
path('delete_product', views.delete_product, name='delete_product')]