我是编程新手,
我想使用javascript实现巴士座位安排。
我的职能:
var init = function (reservedSeat) {
var str = [], seatNo, className;
bus_capacity = settings.cols * settings.rows;
for (i = 0; i < settings.cols; i++) {
for (j = 0; j < settings.rows; j++) {
seatNo = (i + j * settings.cols + 1);
className = settings.seatCss + ' ' + settings.rowCssPrefix + i.toString() + ' ' + settings.colCssPrefix + j.toString();
if (seatNo > (bus_capacity + settings.offset) ) {break};
if ( $.isArray(reservedSeat) && $.inArray(seatNo, reservedSeat) != -1) {
className += ' ' + settings.selectedSeatCss;
}
str.push('<li data-toggle="modal" href="#sell_ticket" class="' + className + '"' +
'style="top:' + (i * settings.seatHeight).toString() + 'px;left:' + (j * settings.seatWidth).toString() + 'px">' +
'<h4><a title="' + seatNo + '">' + seatNo + '</a></h3>' +
'</li>');
}
}
$('#place').html(str.join(''));
};
这是一个显示具有指定座位号的座位的功能,但是我希望显示...这个:
[1] [2] [5] [4] [3]
[6] [7] [10] [9] [8]
...
...
答案 0 :(得分:0)
function getSeatPos(seat) {
seat--;
return {
row: Math.floor(seat / 5) + 1,
place: [1, 2, 5, 4, 3][seat % 5]
};
}
var i;
for (i = 1; i <= 20; i++) {
document.write(i + ': ' + JSON.stringify(getSeatPos(i), null, 4) + '<br>');
}
计算基于1..n,但我们需要0 ..(n-1)。其余的是在即时调用的数组中。
或将ID安排在所需位置