一尘不染

Django:如何从模板调用视图函数?

django

我有一个关于如何从模板HTML按钮调用视图函数的问题?像onclick函数一样?这是模板:

<input id="submit" type="button" onclick="xxx" method="post" value="Click" />

而views.py是:

def request_page(request):
    ...do something...
    return render_to_response("/directory.html", {})

非常感谢你。


阅读 911

收藏
2020-03-27

共2个答案

一尘不染

一种选择是,你可以submit使用form

像这样:

<form action="{% url path.to.request_page %}" method="POST">
    <input id="submit" type="button" value="Click" />
</form>

(删除onclickmethod

如果你想加载页面的特定部分,而无需重新加载页面-你可以

<input id="submit" type="button" value="Click" data_url/>

和一个submit听众

$(function(){
     $('form').on('submit', function(e){
         e.preventDefault();
         $.ajax({
             url: $(this).attr('action'),
             method: $(this).attr('method'),
             success: function(data){ $('#target').html(data) }
         });
     });
});
2020-03-27
一尘不染

假设您希望每当用户单击“单击”按钮时从html文本框中的用户输入中获取值,然后调用您在mypythoncode.py内编写的python函数(mypythonfunction)。注意,“ btn”类在css文件中定义。

在templateHTML.html中:

内部view.py:

import mypythoncode

def request_page(request):
if(request.GET.get(‘mybtn’)):
mypythoncode.mypythonfunction( int(request.GET.get(‘mytextbox’)) )
return render(request,’myApp/templateHTML.html’)

2020-03-27