Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z JS (usuwanie elementu listy)
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
bobens_83
Witam. Przyznam ze to moj pierwszy kontakt z JS i mam pewne problemy

miedzy innymi z takim tutorialem:


Kod
<script >
function addElement() {
  var ni = document.getElementById('myDiv');
  var numi = document.getElementById('theValue');
  var num = (document.getElementById('theValue').value -1)+ 2;
  numi.value = num;
  
  var newdiv = document.createElement('div');
  var divIdName = 'my'+num+'Div';
  newdiv.setAttribute('id',divIdName);
  newdiv.innerHTML = 'Element Number '+num+' has been added! <a href=\'#\' onclick=\'removeElement('+divIdName+')\'>Remove the div "'+divIdName+'"</a>';
  
  ni.appendChild(newdiv);
  
}

function removeElement(divNum) {
  var d      = document.getElementById('myDiv');
  var olddiv  = document.getElementById(divNum);
  d.removeChild(olddiv);
  
}
</script>

<html>

<input type="hidden" value="0" id="theValue" />

<p><a href="javascript:;" onclick="addElement();">Add Some Elements</a></p>
<div id="myDiv"> </div>

</html>




Po kliknieciu 'Add Some Elements' na ekranie wyswietlany jest kolejny element listy, naprzyklad:
-> Element Number 6 has been added! Remove the div "my6Div"

jednak po kliknieciu linku 'Remove the div "my6Div"' element nie usuwa sie z ekranu.

Czym spowodowany moze byc problem? Pozdrawiam.
ziqzaq
Zwróć uwagę na ten kod:

Kod
newdiv.innerHTML = 'Element Number '+num+' has been added! <a href=\'#\' onclick=\'removeElement('+divIdName+')\'>Remove the div "'+divIdName+'"</a>';


Opera w konsoli odrazu wali errorem WRONG_ARGUMENTS_ERR. Polecam zrobić sobie alert(newdiv.innerHTML) po wykonaniu powyższego kodu i przeanalizować to co się ukarze.

Jeśli się nie domyślisz to bardziej cię naprowadzę - ale uważam że sam spokojnie znajdziesz błąd. winksmiley.jpg
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.