2010-11-13 2 views
3

Предположим, я следующий DIVДинамически добавить DIV в другой с помощью JQuery

<div id="myDiv" style="display:none" title=""></div> 

У меня есть АЯКС вызов, добавляемых HTML-разметку для этого Div с помощью

$("#myDiv").html('').html(response); 

Я хотел бы добавить скрытый контент в основной div до содержимого ответа, поэтому результат будет

<div id="myDiv" style="display:none" title=""> 
    //my hidden content 
    //here there will be the response HTML markup  
</div> 

Как я могу сделать i t используя код jQuery?

+0

Просто добавьте еще один div после вашего скрытого содержимого и добавьте к нему? –

+0

Вы хотите иметь постоянный скрытый контент и заменять каждый раз своих следующих братьев и сестер? –

+0

С кодом, который я использую, у меня есть один дочерний узел 'myDiv'. Я хочу добавить еще один дочерний узел 'myDiv' перед тем, который – Lorenzo

ответ

5

С .html() перезаписывается в любом случае, нет необходимости делать .html('').

Вначале вы должны установить скрытый контент, а затем ответ will .append().

$("#myDiv").html('<span class="hidden">somehiddencontent</span>') 
      .append(response); 

CSS

span.hidden { display:none; } 

Вы также могли бы сделать это в одном кадре:

$("#myDiv").html('<span class="hidden">somehiddencontent</span>' + response); 

Если есть любой шанс, что будет JQuery данные управления внутри #myDiv, было бы безопаснее до use .empty() до .html().

$("#myDiv").empty() 
      .html('<span class="hidden">somehiddencontent</span>' + response); 
+0

Хорошо. Я собираюсь попробовать это. Я пытаюсь сделать это, чтобы решить описанную здесь проблему: 'http: // stackoverflow.com/ questions/4172511/jquery-generic-code' вы можете посмотреть на нее? – Lorenzo

1
$("#myDiv").html('').append(something).append(somethingElse); 

или prepend() если вы хотите сделать это в обратном порядке.