Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [xml][jquery], Procesowanie danych z pobranego xml'a
rulespl
post
Post #1





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 29.03.2009

Ostrzeżenie: (0%)
-----


Witam
Mam problem z obsługą danych z pobranego xml'a
Odczytywana jest tylko pierwsza wartość z pliku
oto kod:
  1. $.ajax({
  2. type: "POST",
  3. url: "rysuj.xml",
  4. dataType: "xml",
  5. success: function(xml) {
  6. $(xml).find('pozycja',xml).each(function(i){
  7. var id = $(this).attr('id')
  8. //chyba tu jest jakis problem questionmark.gifquestionmark.gif
  9. var punkt = $(this).find('kurs').text();
  10.  
  11. $('<li></li>').html(punkt+ ' (' + id + ')').appendTo('#punkt ol');
  12.  
  13. }); //close each(
  14. }
  15.  
  16. }); //close $.ajax(

i pobierany plik
Kod
   <wykres>
  
   <pozycja id="1">
   <kurs>12</kurs>
   </pozycja>
  
   <pozycja id="2">
   <kurs>34</kurs>
   </pozycja>
  
   <pozycja id="3">
   <kurs>76</kurs>
   </pozycja>
   </wykres>


w zmiennej punkt tak jakby jest wrzucana tylko pierwsza wartość

Pomocy!!! :]
Go to the top of the page
+Quote Post
erix
post
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Sprawdź, czy wszystko jest w porządku w konsoli przeglądarki.

Nie mam pewności, ale może chodzić o to:
Kod
var punkt = $(xml).index(i).find('kurs').text();


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
rulespl
post
Post #3





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 29.03.2009

Ostrzeżenie: (0%)
-----


Sorki, mój błąd, kod przedstawiony wcześniej działa, ma problem jak dodaje funkcje do rysowania wykresu w svg. Korzystam z biblioteki raphael.js. Sprawdzałem kod bez użycia Ajax i działa. Problem pojawia sie gdy dane do wykresu pobieram z XML'a dynamicznie.
oto funkcja:
Kod
function rysuj(punkt) {
        
         var path = paper.path({stroke: "green", "stroke-width":2}).relatively().moveTo(55, 230).lineTo(50, -punkt).lineTo(50, -punkt).lineTo(50, -punkt).lineTo(50, -punkt).lineTo(50, -punkt).lineTo(50, -punkt).lineTo(50, -punkt).lineTo(50, -punkt).lineTo(50, -punkt).lineTo(50, -punkt);
            return path;            
         }


Problem jest jak korzystam z niej wewnatrz funckji each
Kod
success: function(xml) {
                         var paper = Raphael("wstaw", 800, 600);
                        paper.drawGrid(55, 20, 500, 210, 10, 10, "#333");
                     $(xml).find('pozycja',xml).each(function(i){
        
                        

                        var id = $(this).attr('id')
                        var punkt = $(this).find('kurs').text();
                        
                        
                        $('<li></li>').html(punkt+ ' (' + id + ')').appendTo('#punkt ol');
                        //nie dziala exclamation.gif!!
                        mmm = rysuj(punkt);
                        wyjscie = wyjscie+ mmm;
            
                     })


Rysuje tylko siatke (paper.drawGrid) i podaje tylko pierwsza wartosc z xml w <ol>
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 03:17