jQuery i dynamiczna zawartość.

0

Witam,
Mam dziwny problem. Jeżeli użytkownik kliknie przycisk 'Rozwiń' muszę dodać do tabeli jeden wiersz poniżej i w nim wyświetlić niezbędne dane. Kod który mam działa w tej kwestii bez zarzutu. Niestety w żaden sposób nie mogę sprawdzić czy już czasem wiersz nie został dodany poprzednim kliknięciem (w sumie mógłbym zablokować przycisk, ale chcę aby to zrobił jQuery). Kod który mam:

$(function ()
{
    $('.spanSelect').on('click', function ()
    {
        var thisId = $(this).attr('id') + '.add';

        if ($('#'+thisId).length == 0)
        {
            var curRow = $(this).closest('tr');
            $('<tr id="' + thisId + '"><td colspan="9">Popek</td></tr>').insertAfter(curRow);
        }
    });
});

Podsumowując, oczekiwałbym że jak ktoś pierwszy raz kliknie na .spanSelect, jquery sprawdzi czy wiersz już nie został dodany, jeżeli length zwróci 0 to doda, jeżeli coś innego to zignoruje. Problem jest taki, że nawet jak dodam wiersz (thisId jako ID), to skrypt zawsze zwraca 0 i pozwala na dodanie nowej linii. Proszę o pomoc

1
if ($('#'+thisId).length == 0)

po przeliczeniu wychodzi np:

$('#abcd.add')

a selektor #abcd.add oznacza proszę Ciebie element o ID = abcd i klasie add ;]

$('[id="'+thisId+'"]')

albo zamiast tej kropki używaj znaku podkreślenia ;)

0

dzek69 mega dzieki. Cala noc przedumalem dlaczego. Zmienilem na _ i jak reka odjal.

1 użytkowników online, w tym zalogowanych: 0, gości: 1