2014-12-24 2 views
1

Я хочу динамически добавлять info div в каждый динамический класс.Как добавить div динамически внутри div по классу - JQuery

HTML

<div id='container'> 
    <div class='dynamic'></div> 
    <div class='dynamic'></div> 
    <div class='dynamic'></div> 
    <div class='dynamic'></div> 
</div> 

Я хочу, как это.

<div id='container'> 
    <div class='dynamic'><div class="info">info</div></div> 
    <div class='dynamic'><div class="info">info</div></div> 
    <div class='dynamic'><div class="info">info</div></div> 
    <div class='dynamic'><div class="info">info</div></div> 
</div> 

JS FIDDLE

ответ

2

Для добавления информации DIV в каждом классе с помощью JQuery, просто используйте:

$(".dynamic").append("<div class='info'>info</div>"); 

JSFiddle демонстрирует это.

Если вы хотите постоянно проверять .dynamic классов, вы можете использовать что-то вроде этого:

$(document).ready(setInterval(function(){ 
    $(".dynamic").append("<div class='info'>info</div>"); 
}, 1000)); 

В приведенном выше случае, вы проверяете для .dynamic классов каждые 1000 мс (1 секунда).

Надеюсь, это поможет.

+0

Зачем вам это делать? Проверяя каждую секунду, чтобы добавить ... – Mivaweb

+1

Вопрос был сформулирован: «Я хочу динамически добавлять информацию div в каждый динамический класс». Я предположил, что, возможно, пользователь будет динамически добавлять divs через какое-то действие пользователя и хочет, чтобы эти divs содержали информационные div. Поэтому я представил вариант/пример, если он полезен. – gehleh

+0

Спасибо @gehleh, и как я могу добавить .info в качестве родителя для некоторого div. –

3

Вы можете использовать метод $.wrapInner

$(".dynamic").wrapInner('<div class="info">info</div>');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<div id="container"> 
 
    <div class="dynamic"></div> 
 
    <div class="dynamic"></div> 
 
    <div class="dynamic"></div> 
 
    <div class="dynamic"></div> 
 
</div>

+1

Спасибо Alexander. –

2

Попробуйте использовать append():

$('.dynamic').append($('<div/>', { class: 'info' }).html('info')); 

Обновите скрипку:

http://jsfiddle.net/4cncLor7/2/

Если .dynamic ДИВ уже содержит контент, и вы хотите, чтобы в .info DIV в начале использования prepend():

$('.dynamic').prepend($('<div/>', { class: 'info' }).html('info')); 
0

Вы могли бы сделать что-то например:

$('.dynamic').each(function() { 
    var newDiv = $('div'); 
    newDiv.addClass('info'); 
    newDiv.html('info'); 

    //inject the new div 
    $(this).append(newDiv); 
}); 
0

проверить этот код: Example

Javascript:

var vof=$("#box1").val(); 
//$(".result-box").text(vof); 
var e = $('<div class="result-box">'+vof+'</div>'); 
$('#box').append(e); 

HTML:

<div id="box"> 
<!--<div class="result-box" id="rbx"></div>--> 
</div>  

здесь я создаю динамический DIV так, что каждая кнопка времени щелкнул это создать новый DIV и вы может добавить идентификатор атрибута к ним отдельно

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