W takim razie tworzę <li>... </li>
w JavaScript
$(function () {
var settings = {
rows: 6,
cols: 6,
rowCssPrefix: 'row-',
colCssPrefix: 'col-',
seatWidth: 30,
seatHeight: 30,
seatCss: 'seat',
selectedSeatCss: 'selectedSeat',
selectingSeatCss: 'selectingSeat'
};
var init = function (reservedSeat) {
var str = [], seatNo, className;
for (i = 0; i < settings.rows; i++) {
for (j = 0; j < settings.cols; j++) {
seatNo = (i + j * settings.rows + 1);
className = settings.seatCss + ' ' + settings.rowCssPrefix + i.toString() + ' ' + settings.colCssPrefix + j.toString();
str.push('<li id="'+seatNo+'" class="' + className +" table"+seatNo+ '">' +'<a id="a'+ seatNo +'" title="'+ seatNo+'"></a>' '</li>');
}
}
$('#place').html(str.join(''));
};
Teraz muszę zastosować klasę selectedSeat
do <li>
id = 15, 14, 25, 10
-1
user3419304
16 sierpień 2014, 13:39
2 odpowiedzi
Najlepsza odpowiedź
Iterate nad zwracaną tablicą, dodając klasę do wszystkich określonych elementów.
$.each(selectDB, function() {
$("li#" + this).addClass(settings.selectedSeatCss);
});
W funkcji {X0}} powinieneś zrobić:
className = settings.seatCss + ' ' + settings.rowCssPrefix + i.toString() + ' ' + settings.colCssPrefix + j.toString();
if ($.inArray(seatNo, reservedSeat) != -1) {
className += ' ' + settings.selectedSeatCss
};
2
Barmar
16 sierpień 2014, 13:32
$.each(selectDB, function(i, v) {
$('#' + v).addClass("selectedSeat");
});
1
Sid
16 sierpień 2014, 10:06