2016-08-13 3 views
-1

Ajax работает с простой JavaScript, но не с JQueryJQuery AJAX не вставляет HTML?

Вот код

$(document).ready(function(){ 
    var url = 'data.json'; 

    $.getJSON(url, function(response){ 
    var htm = '<ul class="bulleted">'; 
    $.each(response, function(index, value){ 

     htm += '<li>'; 
     htm += value.name; 
     htm += value.inoffice; 
     htm += '</li>'; 

    }); 
    htm += '</ul>'; 
    $("container").html(htm); 
    }); 
}); 

Проблема ничего добавляется в контейнере DIV.

+5

Вы уверены, что это 'container', а не' # container'? –

+0

Проверьте идею Адриано, поставив console.log в свой 'each', чтобы убедиться, что вы действительно получаете значения. – HeadCode

+1

'$ (" container ")' будет возвращать весь контейнер _tags_: ''. Если вы ищете элемент с идентификатором контейнера, тогда он должен быть '$ ('# container')' – rossipedia

ответ

1

Не имея возможности увидеть ваш HTML, я предполагаю, что вы неправильно выбрали свой jQuery-селектор при извлечении вашего контейнера.

  • $("container") подберет все <container></container> элементы.

  • $("#containter") выберет <div id="container"></div> элемент.

  • $(".container") выберет все <div class="container"></div> элементов.

В настоящее время вы используете первый селектор, но это будет работать только если элемент в вашем HTML является <container>. Если это просто опечатка, и у вас есть идентификатор или класс, используйте вместо этого один из других селекторов.

Смежные вопросы