Dynamically create divs with incremented id using

2019-03-30 06:27发布

I have a text I want to append multiple divs but the id should be changed dynamically. e.g:

<div id=first>text</div>
<div id=first0>text</div>
<div id=first1>text</div>
<div id=first2>text</div>
<div id=first3>text</div>
<div id=first4>text</div>
<div id=first5>text</div>

Any help? thanks..

4条回答
欢心
2楼-- · 2019-03-30 06:54

You can change it with .attr():

$('#first').attr('id', 'first6')
查看更多
可以哭但决不认输i
3楼-- · 2019-03-30 06:58

Your title and question content seem to disagree with each other. I am assuming you are wanting to create div's where each id sequentially increments each time one is created?

$(function(){
  var count = 0;
  $('#append').click(function(){
    $('#parent').append('<div id="first'+count+'">text</div>');
    count++;
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a id="append">Add DIV</a>
<div id="parent"></div>

查看更多
ゆ 、 Hurt°
4楼-- · 2019-03-30 07:03

try to change the code to :

<div id="first">text</div>
<div id="first0">text</div>
<div id="first1">text</div>
<div id="first2">text</div>
<div id="first3">text</div>
<div id="first4">text</div>
<div id="first5">text</div>

dont forget the id inside " " (id="first" not id=first)

now you can simply use jquery : $("#first").attr('id','first6');

查看更多
时光不老,我们不散
5楼-- · 2019-03-30 07:07

If you were interested in how styling works.`

$(function(){
  for (let i = 0 ;i < 10; i ++){  
      $('#foo').append('<div id="first'+i+'">text</div>');
  }
});
#first4 {
  background: blue;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="foo"></div>

查看更多
登录 后发表回答