• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Usuwanie wybranego elementu z listy

VPS Starter Arubacloud
0 głosów
498 wizyt
pytanie zadane 23 czerwca 2017 w JavaScript przez nitrio578 Początkujący (270 p.)
Problem dotyczy usunięcia dynamicznie tworzonych inputów. Te które są zaznaczone checkboxem powinny zostać usunięte z DOM-u, a jest usuwany tylko element, który jest najstarszy, najwcześniej stworzony. Warunek  if(e.target.checked === this.input) poprawnie wykrywa, który element jest  "czeknięty", ale nie wiem jak zrobić żeby usunął ten konkretny elem, a nie ten który jest najwyżej. Dokładnie chodzi o funkcję, która jest przypięta do button2

http://wklej.org/id/3207419/ JS

http://wklej.org/id/3207420/ HTML

1 odpowiedź

0 głosów
odpowiedź 23 czerwca 2017 przez Chess Szeryf (76,710 p.)
<body style="background:grey">
 
<form method="post" action="" onsubmit="event.preventDefault();">
	<input type="text" id="get_value_from_text" />
	<input type="submit" value="OK" id="OK"/>
	<input type="submit" value="X"  id="X"/>
</form>

<div id="here"></div>
 <div id="here2"></div>
<script>
const OK = document.getElementById('OK');
const X = document.getElementById('X');
const get_value_from_text = document.getElementById('get_value_from_text');
function add_field(){	
	var drawe = document.createElement("input");
	var drawed = document.createElement("span");
 	
	 
    drawe.setAttribute('type','checkbox');
	
	drawe.setAttribute('id','elo');
    drawed.innerHTML = get_value_from_text.value;
	var here = document.getElementById('here');
	 
	 
	document.body.insertBefore(drawe,here);
	document.body.insertBefore(drawed,here);
 
}
function remove_field(){
	var input = document.getElementById('elo');
	console.log(input.checked);
	if(input.checked==true){ 
		document.querySelector("input[type='checkbox']").remove();
		document.querySelector("span").remove();
		console.log('prawda');
	}else{ 
		console.log('o co chodzi?');
	}
}

OK.addEventListener('click',add_field,false);
X.addEventListener('click',remove_field,false);

</script>

</body>

Jeśli chciałbyś użyć mojego kodu, to go lekko zmodyfikuj, ponieważ teraz usuwa tylko pierwszy element jak się zaznaczy wszystkie checkbox'y.

Podobne pytania

0 głosów
1 odpowiedź 206 wizyt
pytanie zadane 2 września 2019 w C i C++ przez Ryszard Kałuziński Początkujący (280 p.)
0 głosów
2 odpowiedzi 423 wizyt
pytanie zadane 6 stycznia 2018 w C i C++ przez Łukasz Michalski Użytkownik (560 p.)
0 głosów
1 odpowiedź 639 wizyt
pytanie zadane 4 października 2017 w JavaScript przez Vorex444 Dyskutant (9,610 p.)

92,453 zapytań

141,262 odpowiedzi

319,088 komentarzy

61,854 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Akademia Sekuraka 2024 zapewnia dostęp do minimum 15 szkoleń online z bezpieczeństwa IT oraz dostęp także do materiałów z edycji Sekurak Academy z roku 2023!

Przy zakupie możecie skorzystać z kodu: pasja-akademia - użyjcie go w koszyku, a uzyskacie rabat -30% na bilety w wersji "Standard"! Więcej informacji na temat akademii 2024 znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...