Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Dodawanie niepotrzebnego <a> przy zmianie innerHTML
Forum PHP.pl > Forum > XML, AJAX > AJAX
jedrus4
Witam,
mam pewien dość dziwny problem.

Tak wygląda wycinek treści strony (template'u):

  1. <div id="klientIndywidualnyBiznesowy">
  2. <a id="klientWiecej" href="{$klientBiznesowy.link}">
  3. <h2>{$klientBiznesowy.tytul}</h2> {$klientBiznesowy.tresc}
  4. </a>
  5.  
  6. (nieistotny kod)
  7.  
  8. </div>


próbuję za pomocą AJAX zmienić treści i niestety dzieje się dziwna rzecz.

Ustawiam w funkcji następującym sposobem:

  1. <?php
  2. document.getElementById(cel).innerHTML = tabelka[3] + tabelka[5];
  3. document.getElementById(cel).href = tabelka[6];
  4. ?>


gdzie cel = "klientWiecej"

dane w tabelka[3] = "<H2>TYTUL<H2>";
dane w tabelka[5] = "tresc newsa";
dane w tabelka[6] = "odnosnik.html";

i teraz ciekawe, po przypisaniu tych wartosci do innerHTML sam on zawiera juz:
  1. <a id="klientWiecej" href="{$klientBiznesowy.link}">
  2. <h2><a>TYTUL</a></h2> <a>tresc newsa</a>
  3. </a>


niepotrzebnie gdzies dodawane jest <a> oraz </a>

czy ktoś może wie o co chodzi??
phpion
Problem powinien zniknąć jeśli będziesz stosował właściwą hierarchię znaczników. Nie możesz wpakować <h2> wewnątrz <a>. Twój szablon powinien wyglądąc więc tak:
  1. <div id="klientIndywidualnyBiznesowy">
  2. <h2><a id="klientWiecej" href="{$klientBiznesowy.link}">{$klientBiznesowy.tytul}</a></h2>
  3. <a id="klientWiecej" href="{$klientBiznesowy.link}">{$klientBiznesowy.tresc}</a>
  4.  
  5. (nieistotny kod)
  6.  
  7. </div>

Oczywiście w wyniku tego masz zdbublowane id="klientWiecej" więc jakoś musisz to rozwiązać.
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.