2014-01-21 2 views
0

Как я могу вставить div в другой div, используя jquery? Я пытаюсь заменить содержимое моего div загрузочным div до тех пор, пока не вернется вызов ajax.Показать анимацию загрузки в div

<div id="content1>foo</div> 
<div id="content2>bar</div> 
<div id="loadingDiv" class="loading-indicator"></div> 

У меня есть общий АЯКС запрашивающего, который принимает DIV ID и URL запроса, который заполнит содержимое Div, когда запрос завершен -

 MyCommon.GetAjaxCall(fetchUrl, data) 
     .done(function (responseData) { 
      // On success, put content 
      $(responseContainer).html(responseData.View); 
     }) 

В идеале, я просто хочу, чтобы заполнить содержимое responseContainer, когда я ввожу свой вызов функции, чтобы показать анимацию загрузки в div и заменить ее содержимым ответа при завершении ajax.

Я попытался добавить $(responseContainer).html($("#loadingDiv").show()); (+ некоторые варианты), а также попробовал appendChild, чтобы предшествовать GetAjaxCall выше, но никто из них не работал. Я пытаюсь создать макет страницы стиля панели управления, данные заполняются в каждом div независимо друг от друга и по-прежнему показывают одну и ту же загружающую анимацию. Думаю ли я об этом правильно?

+0

Похоже, что вы пытаетесь должны работать. Вот работа [jsfiddle] (http://jsfiddle.net/9RDFV/). –

+0

В моем загрузочном div нет контента, который является частью, которая меня отключает. Мой счетчик похож на учебник здесь - http://www.codicode.com/art/pure_css3_loading_spinner_animations.aspx – kosh

+0

Я обновил [jsfiddle] (http://jsfiddle.net/9RDFV/1/) с помощью этого стилиста. –

ответ

2

Следующие должны сделать это:

$('#content1').append($('#loadingDiv')); 

Если вы хотите сделать это с помощью .html, то убедитесь, что вы

$('#content1').html($('#loadingDiv').html()) 
Смежные вопросы