django ajax 模板数据,jquery – Django,ajax填充模型数据的形式

所以我得到了一份简单的登记表.在这种形式中还有3个字段:

>大学

>课程

>模块

我想要做的是过滤数据.因此,当用户选择大学时,课程字段(选择)将显示属于该大学的所有课程.此外,当用户选择课程时,模块字段(选择)将显示属于该课程的所有模块.如果你检查图像,你会发现它有点简单.

我设法显示所有的大学,课程和模块,但这是不实际的,因为数据不正确(显示所有条目).我知道如何过滤查询集,但我不知道如何使用AJAX来做到这一点.试过很多教程,但找不到东西所以我很抱歉没有发布代码.

如果你能指出我正确的教程,示例或给我一些代码来开始工作……

UPDATE

我用Del的例子开始研究它.问题是我对AJAX和JS都不擅长.所以我创建了一个从ajax表单接收请求的视图(现在它只返回所有课程,没有过滤).我遇到的问题是,当我选择大学时,课程选择会变空.所以我猜它不会从视图中获取数据.如果你能看看..

视图

def ajax_get_courses(request):

courses = Course.objects.all()

if request.is_ajax():

data = serializers.serialize('json',courses)

return HttpResponse(data,'json')

else:

return render_to_response('registration/registration_form_teacher.html',{'courses':courses},context=RequestContext(request))

JS

$(document).ready(function(){

$("#university").change(function(){

var request = $.ajax({

url: "{% url 'ajax_get_courses' %}",type: "POST",data: { university: $("#university").val(),csrfmiddlewaretoken: '{{ csrf_token }}'

},dataType: "html"

});

request.done(function(msg) {

$("#course").html( msg );

});

});

});

更新2

所以在选择大学之后,选择课程的源代码是这样的:

[{"pk": 1,"model": "studies.course","fields": {"attendance": "FT","name": "Computer Science","degree": "BSc (Hons)","university": 1,"modules": [],"years": 3}},{"pk": 2,"degree": "MComp (Hons)","years": 4}},{"pk": 3,"name": "Civil Engineering","degree": "BEng (Hons)",{"pk": 4,"degree": "MEng (Hons)",{"pk": 5,"name": "Pharmacy","degree": "MPharm (Hons)",{"pk": 6,"name": "Aeronautical Engineering","university": 4,{"pk": 7,"name": "Biochemistry","university": 3,{"pk": 8,"name": "Chemistry",{"pk": 9,"name": "Business Studies","years": 3}}]

这意味着我正在获取数据,但我必须添加一些HTML?喜欢< li> …< / li&gt ;?

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值