jQuery .load () не работает в Django - PullRequest
0 голосов
/ 10 июля 2011

Я пытаюсь позвонить по URL-адресу в 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 (), ноЯ бы предпочел не

Ответы [ 2 ]

1 голос
/ 10 июля 2011

Попробуйте обернуть его в готов :

$(document).ready( function () {
    $('.myClass').load('{% url update_dropdown %}',
        {'kind': "Book" },
        function(data){
            alert(data);
     });    
});
0 голосов
/ 11 июля 2011

Очевидно, это была проблема с библиотекой jQuery uiSelect, которую я использовал.Это было устаревшим и вызывало ошибки.

...