jquery如何动态获取div的id

<tr><td>
<div id="1875" onclick="danji(1875)">
<a >1-301</a>
</div>
</td></tr>
<tr><td>
<div id="1876" onclick="danji(1876)">
<a >1-302</a>
</div>
</td></tr>

<script = "text/javascript">
function danji(){
alert($("#1875").parent().next("td").html());
//用这个我可以获取到1876他的节点内容

alert($("#1875").parent().next("td").attr("id"));
为什么我用下面这个获取不到1876的id呢
}
</script>
<tr>
<td><div id="1" onclick="danji(1)"></div></td>
<td><div id="2" onclick="danji(2)"></div></td>
</tr>
<tr>
<td><div id="4" onclick="danji(4)"></div></td>
<td><div id="5" onclick="danji(5)"></div></td>
</tr>

第1个回答  推荐于2016-12-06
// 找最新的父元素tr
// 再找第一个div
// 获取id
$('#1875').closest('tr').find('div:eq(0)').attr('id')

追问

我在问题上加了点东西

我现在想通过id为 1 得到id为4的 2 得到 5这些id都是动态生成的 您有什么好办法吗

追答

看看两个有没有什么规则


1 + 3 = 4

2 + 3 = 5

function danji(id){
    id = 3 + parseInt(id);
    $('#' + id) // 1的时候找到4, 2的时候找到5
    
    // 点击4, 5的时候要什么??
}

追问

我发了条私信 你在看看把

追答function danji(id) {
  var td = $('#' + id).parent();
  var tr = td.parent();
  var index = tr.children().index(td);
  var nextTr = tr.next();
  if (nextTr.length) {
      alert(nextTr.find('td:eq(' + index + ') div:first').attr('id'));
  }
}

本回答被提问者采纳
第2个回答  2013-06-22
你想要干嘛,把功能需求说出来追问

我想点击 0301  获得 0201 的id   点击 0201 获得 0101 的id  有什么办法实现

第3个回答  2016-01-08
1、根据div标签获取所有的div节点
var divs = $('div');//获取所有的div节点

2、获取div的id

divs.each(function(k,v){//通过each循环每个div节点
alert(this.id);//获取div节点的id值
});