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);
});

PRÓBNY

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