我有一个带有html的5X5表,每个单元格在点击后获得一个值。例如,如果我在第3行和第2列中选择了一个单元格,我想在第四行和第二列中获取单元格的值。
有表格:
<table>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</table>
这是在单击单元格时更改单元格内容的脚本。
$('td').click(function() {
$(this).html('X');
$(this).toggleClass('X');
$(this).unbind("click");
});
我也试过这样的事情,但效果不好。
for (var i = 1; i < 5; i++) {
for (var j = 1; i <= 5; j++) {
var test1 = $("table tr:nth-child(" + i + ") td:nth-child(" + j + ")").html();
var k = i+1;
var test2 = $("table tr:nth-child(" + k + ") td:nth-child(" + j + ")").html();
}
}
答案 0 :(得分:0)
此代码仅用于访问下一个单元格的值,而不是在任何单元格中生成值。第一个 if($ next =='')基本上检查所选单元格是否是行中的最后一个。如果是这样,它会跳到下一行并从第一个单元格开始。第二个 if($ next =='')检查表中是否有更多单元格。
<parent-container>
<timer-container />
<button ng-click="??.stopTimer()">Stop</button>
</parent-container>
AngularJS - How to make a stop watch starting from 00:00:00 format
修改强>
在重新阅读问题之后,我改变了jsFiddle以获取下一个垂直单元格值,因为我相信你要求的。如果用户选择该列中的最后一个值,则该值将从下一列中的第一个单元格中获取。
$('#table td').click(function(){
var $next=$(this).next().text();
if($next==''){
$next=$(this).parent().next().find('td:first-child').text();
}
if($next==''){$next='No more data to display.';}
alert($next);
});
答案 1 :(得分:0)
我尝试过使用几行代码的解决方案,您可以在此处进行测试https://jsfiddle.net/cw237zyb/
$("td").click(function(){
$($(this)[0]).children().attr('style','display:block');
$($($('.row1')[0]).children()[1]).children().attr('style','display:block');
})
在脚本中你可以插入逻辑来显示下一个值,
我希望这很有用