2015-05-19 57 views
0

我已经搜索了足够的例子,但不能得到满意的结果。请解释所有必要的代码。我在AJAX上很穷。我试图在我的代码中使用DAJAXICE,但取得了一点成功,但没有传递参数。 我正在使用Django 1.6 Dajaxice 0.7 Dajax 0.9。 任何你觉得最简单的方法都可以,但请用所有代码解释。 TIA。如何从Django动态使用AJAX/DAJAX/DAJAXICE /简单的Javascript动态填充另一个下拉菜单?

+0

网上有很多例子。请尝试至少一些解决方案,如果它不适合你,就回来。 –

回答

0

如果您只需要一个简单的Django视图来获取一些AJAX数据,请看django-braces AjaxResponseMixin。下面是返回对象ID及其名称的列表中的代码示例:

from django.views.generic import View 
from braces import views 

class SomeView(views.JSONResponseMixin, views.AjaxResponseMixin, View): 
    def get_ajax(self, request, *args, **kwargs): 
     my_objects = MyObject.objects.all() 
     json_dict = { 
      'ids': [x.id for x in my_objects], 
      'names': [x.name for x in my_objects] 
     } 
     return self.render_json_response(json_dict) 

然后使用jQuery ajax,使您的模板查询并填充字段。

如果你不熟悉基于类的意见,您对这一观点的URL可能是:

url('^objects/(?P<some_id>[0-9]+)/$', SomeView.as_view()) 

然后get_ajax你可以访问self.kwargs['some_id']筛选的对象。

+0

你能帮我用模板代码吗?视图代码是完全正确的。到目前为止,我通过使用form标签的action属性来发送来自模板的请求。我无法通过使用AJAX函数的url标记将请求发送到视图。你能否解释一下这个代码? – atitpatel