有没有办法使用jquery在页面中找到重复的id名称

时间:2011-12-14 17:48:48

标签: javascript jquery

我的脚本是:

$('document').ready(function () {  
    var position = 0; 
    var data = [{'id':'user1'},{'id':'user2'},{'id':'user3'},{'id':'user4'},{'id':'user5'}];  

    $('#add').click(function() {  
        var newdiv=$('<div></div>').attr('id', data[position].id).text(data[position].id);  
        $("#container").append(newdiv);  
        position++;position %= data.length;
    });  
});  

我的HTML是:

<html>
    <body>  
        <button id="add">Add new div</button>  
        <div id="container"><div id="user3"></div></div>  
    </body>  
</html>   

当点击一个按钮我在插入div之前附加一些带有一些id名称的新div我希望检查所有div id名称,如果有什么匹配我不想附加那个div

my jsfiddle is here

2 个答案:

答案 0 :(得分:2)

$("#add").click(function() {
    ...
    $.each(data, function(index, value) {
        $("<div />").attr('id', value.id).text(value.id).appendTo("#container"); 
    });
});

请阅读jQuery Cookbook。这对......头疼有帮助。

答案 1 :(得分:0)

使用array.length作为新id?

$('document').ready(function () {  var data = [{'id':'user1'},{'id':'user2'},{'id':'user3'},{'id':'user4'},{'id':'user5'}];  
$('#add').click(function() {  
  var newdiv=$('<div></div>').attr('id', data.length).text(data.length);  $("#container").append(newdiv); 
  var newData = {};
  newData.id = 'user'+data.length;
  data[data.length] = newData});  
});
  • 谢谢thiefmaster;)