我是Django和JavaScript的新手,我正在努力尝试从使用django-tables2呈现的html表中传递一些值
我想打开一个传递3个参数的django模板。 我有一个带有下拉按钮的html表,有几个选项。 每个打开一个不同的django模板。我使用这个JS函数从表中获取值:
<script type="text/javascript">
function param(){
$(function(){
var http = new XMLHttpRequest();
var tbl = document.getElementById("myTable");
var rows = tbl.rows;
var url = "/recepcion/";
for (var i = 0; i < rows.length; i++){
rows[i].onclick = function(){
idpro = this.cells;
ano = this.cells;
mes1 = this.cells;
$.ajax({
type:"POST",
url: "/recepcion/",
datatype: "json",
data: ({idprov: idpro[0].innerHTML, anio: ano[1].innerHTML, mes: mes1[2].innerHTML }),
success: function(){
http.open("POST",url,true),
http.send(data)
}
});
}
}
});
}
</script>
我需要的功能是:当我点击下拉按钮的第一个选项时,调用此功能。该函数将从某些单元格中获取值,并将此值作为参数传递给另一个模板,我可以在其中编辑某些记录。 这是我尝试传递参数的视图 views.py
def RecepcionView(request):
idp = request.POST.get('idpro')
year = request.POST.get('year')
month = request.POST.get('month')
if request.method == 'POST':
r = DetalleRecepcion.objects.get(id_proveedor=idp,year=year,month=month)
form = RecepcionForm(request.POST, instance=r)
if form.is_valid():
form.save()
return HttpResponseRedirect('/monitor/')
else:
r = DetalleRecepcion.objects.get(id_proveedor=idp,year=year,month=month)
form = RecepcionForm(instance=r)
return render_to_response('recepcion.html',
{'form':form},
context_instance=RequestContext(request))
更新 我改变了函数,我把所有函数放在一个函数中,现在可以传递参数,但是我得到了错误:
ReferenceError:未定义数据
http.send(数据)
在firebug中,我可以看到函数将值传递给视图,视图使用我需要的信息来回答表单,但我需要打开表单,不仅要传递值。
任何建议。