Python 在模式弹出窗口中提交django表单
我在模态中呈现我的表单: 视图:Python 在模式弹出窗口中提交django表单,python,jquery,django,Python,Jquery,Django,我在模态中呈现我的表单: 视图: @需要登录\u def任务_编辑(请求,主键): 成员=获取对象或404(任务,主键=主键) 如果request.method==“POST”: 表单=任务表单(request.POST或None,实例=成员) 如果form.is_有效(): reg=form.save(commit=False) 注册保存() 返回HttpResponse( “window.close();”) 其他: 表单=任务表单(实例=成员) 返回呈现(请求'TaskProj/task_
@需要登录\u
def任务_编辑(请求,主键):
成员=获取对象或404(任务,主键=主键)
如果request.method==“POST”:
表单=任务表单(request.POST或None,实例=成员)
如果form.is_有效():
reg=form.save(commit=False)
注册保存()
返回HttpResponse(
“window.close();”)
其他:
表单=任务表单(实例=成员)
返回呈现(请求'TaskProj/task_edit.html',{'form':form})
在模式弹出窗口中呈现的我的html:
{%load staticfiles %}
<div class="row">
<div class="col-lg-12">
<div class="panel">
<div class="content-box">
<h3 class="content-box-header bg-primary">
<span class="icon-separator">
<i class="glyph-icon icon-tasks"></i>
</span>
<span class="header-wrapper">
Eidt Tasks </span>
</span>
</h3>
<div class="panel">
<div class="panel-body">
<form method="POST" id="form" class="form-horizontal bordered-row" autocomplete="off">
{% csrf_token %}
<div class="example-box-wrapper">
<div class="form-group">
{{ form.as_p }}
</div>
</div>
<button type="submit" class="btn btn-primary btn-lg btn-block">Salva</button>
</div>
</div>
</form>
<script type="text/javascript">
$(document).on('click','.submit',function(){
$( "#form" ).submit();
});
</script>
{% endblock %}
{%load staticfiles%}
Eidt任务
{%csrf_令牌%}
{{form.as_p}}
萨尔瓦
$(文档)。在('click','.submit',函数()上{
$(“#表格”).submit();
});
{%endblock%}
此表单在模式弹出窗口中呈现。
我尝试保存,但不保存表单。
我认为提交按钮有问题。。。
有什么想法吗?
TY您需要声明一个操作属性,该属性包含处理views.py中特定表单的函数的url。以便表单知道要去哪里,并被处理:
<form method="POST" id="form" class="form-horizontal bordered-row" action="{% 'task_edit' your-object.pk %}" autocomplete="off">
{% csrf_token %}
<div class="example-box-wrapper">
<div class="form-group">
{{ form.as_p }}
</div>
</div>
<button type="submit" class="btn btn-primary btn-lg btn-block">Salva</button>
</div>
</div>
</form>
{%csrf_令牌%}
{{form.as_p}}
萨尔瓦
在按钮中添加类“提交”。脚本是“.submit”,所以当提交按钮有一个类“submit”时,表单将被提交:$(文档)代码>;它关闭模式但不保存…您在脚本中做了什么吗?如果没有,那么只需删除scriptTo summary:1)单击处理程序绑定到类为“submit”的元素,但不存在此类元素。2) “提交”按钮将提交表单,因此JavaScript似乎没有必要。@showdev表单位于模式对话框弹出窗口中,我尝试不使用脚本,但什么也没有发生
<form method="POST" id="form" class="form-horizontal bordered-row" action="{% 'task_edit' your-object.pk %}" autocomplete="off">
{% csrf_token %}
<div class="example-box-wrapper">
<div class="form-group">
{{ form.as_p }}
</div>
</div>
<button type="submit" class="btn btn-primary btn-lg btn-block">Salva</button>
</div>
</div>
</form>