0

我有一个包含许多动态创建的 div 的页面,如下所示:

<div class="open"></div>
<div class="open"></div>
<div class="open"></div>
<div class="open"></div>

我正在寻找一种获取元素位置的方法(例如,如果元素是第一个实例,则分配 id="1" 如果元素是第二个实例,则分配 id="2"。

我目前正在使用以下 jquery,但被卡住了,因为我不确定从这里去哪里。

 $(document).ready(function () {
 var numDialogs = $('.open').length; 
});

有什么建议么?

4

2 回答 2

4

只需使用:

$('div.open').prop('id', function(i){
    return 'openElement' + (i + 1);
});

JS 小提琴演示

我特意添加了前缀字符串,因为虽然 numericid在 HTML5 下有效,但在 HTML4 下仍然无效,并且难以使用 CSS 选择器进行选择。

参考:

于 2013-10-08T18:58:19.160 回答
0

马克,你可以定位元素,然后像这样添加一个属性:

$('.open').attr('id', numDialogs); 

在这种情况下,这将全部为 4,但我会让您与实际逻辑搏斗以实现正确的数字。祝你好运。

于 2013-10-08T19:17:01.193 回答