Jak do tego podpiąć data-id

0

siemka, jak mogę do tego podpiąć data.id?

$(this).data('id').$('.test_open').addClass('test').removeClass('test_open');
1

co chcesz zrobić? metody są chainowane więc możesz dodać kolejną . po remove class.

0
phanc napisał(a):

co chcesz zrobić? metody są chainowane więc możesz dodać kolejną . po remove class.

przykładowo mam 2x div o różnych id ale o tej samej klasie, i chce użyć w jquery podmiane klasy na obecnie kliknietym divie.
samo data zwraca mi id z response, ale nie wiem jak to podpiąć pod addclass+removeclass.

czyli klikamy na div'a. response zwraca data (tutaj jest id kliknietego diva)
i podmienić addclass+removeclass gdzie id = data

2

ale tu namieszałeś.
Nie musisz wszędzie robić . bo wynik klażdej kropki można zapisać w zmiennej.
const id = $(this).data('id')

elem.addEventListener('click', (e) => {
    const id = e.target.dataset.id;
    const elements = docuemnt.querySelector('`[data-id='${id}']`');
    elements.forEach((elem) => elem.classList.add('fooClass'));
}

tak by to wyglądało w js.
Jeśli chcesz to zrobić w jquery. To po prostu zamieniasz to odowiednio. Jeśli już pobierzesz id z 'data' to wyszukujesz elementy które takie id mają, czyli w gayquery to zamiast querySelector bedzie jakoś tak $('[data-id=..'). I na tych elementach dodajesz klasy czy co tam chcesz.

0
phanc napisał(a):

ale tu namieszałeś.
Nie musisz wszędzie robić . bo wynik klażdej kropki można zapisać w zmiennej.
const id = $(this).data('id')

elem.addEventListener('click', (e) => {
    const id = e.target.dataset.id;
    const elements = docuemnt.querySelector('`[data-id='${id}']`');
    elements.forEach((elem) => elem.classList.add('fooClass'));
}

tak by to wyglądało w js.
Jeśli chcesz to zrobić w jquery. To po prostu zamieniasz to odowiednio. Jeśli już pobierzesz id z 'data' to wyszukujesz elementy które takie id mają, czyli w gayquery to zamiast querySelector bedzie jakoś tak $('[data-id=..'). I na tych elementach dodajesz klasy czy co tam chcesz.

tylko ze ja chce sprawdzac po klasie o nazwie= xxx oraz o id które zwraca response.

tutaj mam ten kod:

<div data-test_page="1" class="test">I</div>
<div data-test_page="2" class="test">II</div>
<div data-test_page="3" class="test">III</div>
const testPage = data => {
	$.post('test.php?test=test&count='+Object.values(data), data , response => {

		if(response.ok){
			$('.test2').addClass('test').removeClass('test2');
			console.log(data);
		}else{
			alert(response.msg);
		}
	});
}

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