Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [XMLHttpRequest] Pobieranie zawartosci XML-a wraz z znacznikami HTML
Forum PHP.pl > Forum > XML, AJAX > AJAX
wizu
Witam.
Napisałem sobie mały skrypcik, który pobiera mi zawartośc odpowiedniego znacznika z XML-a i wyświetla to na stronie. Wszystko działa, ale nie w IE. Ten jako bład wyświetla mi "Wymagany jest obiekt".
Skrypt wygąda mniej więcej tak
Kod
function getXMLHttpRequest()
       {
           var request = false;
           try
           {
               request = new XMLHttpRequest();
           } catch(err1)
           {
               try
               {
                   request = new ActiveXObject('Msxml2.XMLHTTP');
               } catch(err2)
               {
                   try
                   {
                       request = new ActiveXObject('Microsoft.XMLHTTP');
                   } catch(err3)
                   {
                       request = false;
                   }
               }
           }
           return request;
       }
      
       r = getXMLHttpRequest();
      
       function processResponse()
       {
           if (r.readyState == 4)
           {
               if (r.status == 200) or  (r.status == 0)
               {
                   var tytul = r.responseXML.getElementsByTagName('tytul')[0].childNodes[0].nodeValue;
                   ramka.innerHTML = '<span class="tytul">' + tytul + '</span>
      
       ';
                   ramka.innerHTML += r.responseXML.getElementsByTagName('tresc')[0].childNodes[0].nodeValue;
                   var zrodlo = r.responseXML.getElementsByTagName('zrodlo')[0].childNodes[0].nodeValue;
                   if ( zrodlo )
                       ramka.innerHTML += '<div style="text-align: right; font-style: italic; font-size: 10px">' + zrodlo + '</div>';
               }
           }
       }


A tak wygląda xml
Kod
<?xml version="1.0" encoding="utf-8"?>
     <calosc>
         <tytul>
             Rozgrywka
         </tytul>
         <tresc>
                   coś tam
                   <br />
                 <img src="css/img/worms.png" />
         </tresc>
         <zrodlo>
             jakis link
         </zrodlo>
     </calosc>

W tym cały problem, że jak próbuję pobrać i wyświetlic zawartść <tresc> z xml-a, to nie wyświetla mi tego :/ Bez tego br-a i img działa. Próbowałem z CDATA, jednak wtedy nie wczytuje mi całeg otego kawałka.
Potrafi ktoś pomóc?
Z góry dzięki.
erix
Spróbuj zawartość w <trest></tresc> objąć w CDATA. Albo pobierać wartość nie przez nodeValue, tylko innerHTML (z tego, co pamiętam, to dla węzła DOM jest ta własność dostępna).
wizu
Przy pobieraniu przez innerHTML pobiera mi undefined
A przy użyciu CDATA nie pobiera mi nic, przy tym nie ma błędów.
Kod
<tresc>
<![CDATA[
tresc
<br />
<img src="css/img/worms.png" />
]]>
</tresc>
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.