2011-07-10 44 views
0

我试图在Django中调用一个url并加载它的内容。现在,我有:jQuery .load()在Django中不工作

<script> 
    $('.myClass').load('{% url update_dropdown %}', 
     {'kind': "Book" }, 
     function(data){ 
      alert(data); 
    }); 

</script> 

然后认为update_dropdown指的是:

@csrf_exempt        
def update_dropdown(request): 
category = request.POST.get('kind', None) 
all =False; 

args = { 
    "label":category, 
    "all":all 
     } 

return render_to_response('template.html',(args)) 

然而,.load()不会出于某种原因。如果我直接进入URL,它会显示我期望的数据,但.load()不会合作。我知道这不是一个显示问题,因为警报不起作用(除非我删除了@csrf_exempt,然后警告错误页面的HTML)

我对于发生了什么事情感到很困惑,一直在调试这个,并试图找到几个小时的错误,任何帮助将不胜感激。

我可以得到它,如果我做的返回类型的JSON对象和使用的getJSON()工作,但我暂时不希望

+0

当您查看源代码并查看该脚本标记时,您会看到什么?即是否已将“网址”标记解析为正确的网址? – Gareth

+0

是的,我使用print来打印返回内容,并且在进行load()调用时,控制台正确输出所有内容,出于某种原因它不会加载,或者执行警报() – Parker

+0

是否处理了js文件Django的? – Senthess

回答

0

显然这是我使用的jQuery uiSelect库的一个问题。它已过时并导致错误。

1

尝试在ready包裹它:

$(document).ready(function() { 
    $('.myClass').load('{% url update_dropdown %}', 
     {'kind': "Book" }, 
     function(data){ 
      alert(data); 
    });  
}); 
+0

谢谢,但它仍然无法正常工作。 – Parker