我正在使用jquery设计公交车座位布局。我也正确地完成了它。
我使用带有座位号码的阵列,并且我得到了我想要的座位布局。这是我的编码(这里' .bus-table'是一个表类):
var row = Array(),i=0, j=0;
row = [
['1','5','9','13','17','21','25','29','33','37','41','45','49'],
['2','6','10','14','18','22','26','30','34','38','42','46','50'],
['','','','','','','','','','','','','51'],
['3','7','11','15','19','23','27','31','35','39','43','47','52'],
['4','8','12','16','20','24','28','32','36','40','44','48','53']
];
$.each(row, function(index, value) {
$('.bus-table').append('<tr>');
while(j<index+1) {
for(i=0; i<value.length; i++) {
$('.bus-table tr:nth-child('+ (index+1) +')').append(
'<td seatno="'+ row[j][i] +'">' + row[j][i] + '<input type="checkbox"/></td>' );
}
j++;
}
});
这是我的结果:this is my seat layout output
现在问题是在第3行,你只能看到一些复选框。因为在那些地区公共汽车上没有座位。所以,我想删除那些复选框,这意味着在数组(第3行)中我留下了一些空白,根据那些我不想要复选框的空白。我不知道该怎么做。请帮我解决这个案子。
(我为我的英语道歉)
答案 0 :(得分:0)
您可以使用continue
跳过这些地点,如下所示:
for(i=0; i<value.length; i++) {
if (row[j][i] == ""){
'<td seatno="'+ row[j][i] +'">' + row[j][i] + '</td>';
continue;//for blank don't make checkbox elements
}
$('.bus-table tr:nth-child('+ (index+1) +')').append(
'<td seatno="'+ row[j][i] +'">' + row[j][i] + '<input type="checkbox"/></td>' );
}
答案 1 :(得分:0)
在if
循环中添加for
语句:
for(i=0; i<value.length; i++) {
if (row[j][i] !== '') {
$('.bus-table tr:nth-child('+ (index+1) +')').append(
'<td seatno="'+ row[j][i] +'">' + row[j][i] + '<input type="checkbox"/></td>' );
}
else {
$('.bus-table tr:nth-child('+ (index+1) +')').append('<td></td>');
}
}
请注意else
语句,否则会破坏您的表格布局