Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> wydobycie potrzebnej wartości
tdzierza
post 4.02.2008, 15:56:13
Post #1





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 21.01.2008

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


Witam.

Pobieram sobie z <iframe> </iframe>
poprzez operacje:

var ok = document.getElementById("obrazek").contentWindow.document.body.innerHTML;

otrzymuje przykladowo:

<img src="obrazek1.jpg" width="100" height="100"><img src="obrazek2.jpg" width="100" height="100"><img src="obrazek3.jpg" width="100" height="100">

Potrzebuje wyslac do bazy tylko wartosc: obrazek1.jpg, obrazek2.jpg, obrazek2.jpg

Probowalem w ten spsoob:

podzial = ok.split('">');

i substringiem ewentualnie wycyrklowac, ale to jest zbyt statyczne w momecie gdy obrazkow bedzie duzo np , obrazek144 ...

Jeżeli ma ktoś jakiś dobry sposób to będe wdzięczny.
Go to the top of the page
+Quote Post
andrew1985
post 4.02.2008, 17:14:38
Post #2





Grupa: Zarejestrowani
Postów: 48
Pomógł: 4
Dołączył: 28.12.2007

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


Ja bym się nie męczył w czystym JS tylko użył do tego biblioteki JQuery
I przykładowo wyglądało by to tak:

var ok = $("#obrazek img") //i masz liste obrazków w elemencie o ID obrazek

i teraz pętlą lecisz po ścieżkach wyciągająć to tak ok[0].src
Go to the top of the page
+Quote Post
tdzierza
post 5.02.2008, 09:24:00
Post #3





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 21.01.2008

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


Witam.
Na początku dzięki za odpowiedź.

I musz przyznać ze JQuery ma potencjał.

Niestety nie rozwiązał mojego problemu, być może coś źle robie ...

Po wykonaniu:
var ok = $("#obrazek img")

i podaniu alert(ok);

Nie zwraca rzadnego obiektu tylko undefined ....

Po wykonaniu samego
var ok = $("#obrazek")

jest ok.

Być może ten element <img> w <iframe> nie jest traktowany jako lisc drzewa w strukturze DOM. Poniewaz przy zastosownaiu bezposrednio zwyklej skladni DOM tez nie mozna sie tam dostać, wydaje mi sie iz uzywamy ścierzki jakby od kolejnego korzenia dla <iframe> czyli document.body.innerHTML
Go to the top of the page
+Quote Post
nowotny
post 5.02.2008, 11:08:22
Post #4





Grupa: Zarejestrowani
Postów: 875
Pomógł: 122
Dołączył: 2.02.2008

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


Jeśli dobrze zrozumiałem to teraz w ok masz tablice więc alert(ok) nic ci nie da... musisz się przelecieć po tablicy...
Go to the top of the page
+Quote Post
tdzierza
post 5.02.2008, 13:58:00
Post #5





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 21.01.2008

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


Sprawdzalem:

alert(ok[0]); ---> undefined

alert(ok[0].src) ----> Konsola bledow: ok[0] has no properties

dry.gif
Go to the top of the page
+Quote Post
smialy
post 5.02.2008, 15:14:40
Post #6





Grupa: Zarejestrowani
Postów: 60
Pomógł: 4
Dołączył: 23.05.2007
Skąd: Łódź

Ostrzeżenie: (10%)
X----


  1. var body = document.getElementById("obrazek").contentWindow.document.body;
  2. var imgs = body.getElemetnsByTagName('IMG');
  3. var src = [];
  4. for(var i = 0 ,l = imgs.length;i < l;++i)
  5. src.push(imgs[i]);


--------------------
openSuse, Eclipse i Aptana - daje rade
Go to the top of the page
+Quote Post
tdzierza
post 6.02.2008, 08:45:39
Post #7





Grupa: Zarejestrowani
Postów: 12
Pomógł: 0
Dołączył: 21.01.2008

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


Super , takie rozwiązanie jak najbardziej działa guitar.gif

jeszcze w getElementByTagName jest literówka ---> getElementsByTagName
(być może komuś się na przyszłość przyda)

Temat uważam za zamknięty.

Wszystkim dzięki za odpowiedzi.
Pozdrawiam.
Go to the top of the page
+Quote Post
specialplan
post 6.02.2008, 10:18:08
Post #8





Grupa: Zarejestrowani
Postów: 206
Pomógł: 21
Dołączył: 1.09.2006
Skąd: Edinburgh

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


Cytat(tdzierza @ 5.02.2008, 14:58:00 ) *
Sprawdzalem:

alert(ok[0]); ---> undefined

alert(ok[0].src) ----> Konsola bledow: ok[0] has no properties

dry.gif


A dodales biblioteki jQuery do skryptu?
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 Wersja Lo-Fi Aktualny czas: 25.06.2025 - 18:52