日期:2014-05-16  浏览次数:20441 次

如何获取已选checkbox的同行的某个tr里面的值?

             列1    列2     列3
checkbox1    值1    值2     值3

checkbox2    值4    值5     值6

checkbox3    值7    值8     值9



比如我点击了checkbox1  想获取跟checkbox1 同行的  列3 值3  jquery如何获取到?
$("input[type='checkbox'][name='test']").each(function(){
     if(this.checked){

     var text = $(this).eq(3).text();

     alert("text=="+text);
     }
});


这样不行啊!

------解决方案--------------------


$(function(){
$(':checkbox').click(function(){
alert($(this).parents('tr').children().eq(3).html());
});
})

------解决方案--------------------
总觉得dom上的获取不好
一修改dom结构 代码要跟着改
不如在渲染的时候  
生成对应关系
某一行 对应先关的那条数据.......................

------解决方案--------------------
<table>
 <tr>
<td><input type="checkbox" name="test" value="1"></td>
<td>值11</td>
<td>值12</td>
<td>值13</td>
</tr>
<tr>
<td><input type="checkbox" name="test" value="1"></td>
<td>值21</td>
<td>值22</td>
<td>值23</td>
</tr>
 <tr>
<td><input type="checkbox" name="test" value="1"></td>
<td>值31</td>
<td>值32</td>
<td>值33</td>
</tr>
</table>
<input type="button" value="获取选择行的值" onclick="getValue()"/>
<script type="text/javascript" src="http://www.coding123.net/js/jquery.js"></script>
<script>
function getValue(){
  var v=$("input[type='checkbox'][name='test']:checked").closest('tr').find('td:eq(3)').map(function(){return this.innerHTML}).get().join();
  alert(v)
}
</script>