Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

object HTMLIFrameElement - jak pobrać zawartość?

5 views
Skip to first unread message

Slawomir

unread,
Nov 15, 2009, 6:36:43 AM11/15/09
to
Witam

Mam taki problem i liczę że jakoś mi pomozecie. Mam sobie edytor w JS
i potrzebuję wyciągnąć z niego bez przeładowania zawartość (czyli to
co się wpisuje) Wykorzystuję do tego Ajax i mam sobie w skrybcie coś
takiego:
var zawartosc = document.getElementById('id_edytor');

w odpowiedzi dostaję HTMLIFrameElement

a chcę wyciągnąć to co się wpisuje w ten edytor

Jak to zrobić? Jak się odwołać do tego obiektu HTMLIFrameElement ?

Będę wdzięczny za pomoc i podpowiedzi.
z góry dzięki
pozdrawiam
Sławek

Slawomir

unread,
Nov 15, 2009, 6:48:12 AM11/15/09
to
Kurcze już widzę że mi to nie zwróci zawartości bo ten obiekt
przechowuje tylko atrybuty a nie zawartosć:(

Paweł Piskorz

unread,
Nov 15, 2009, 10:00:50 AM11/15/09
to
Slawomir wrote:
> Mam taki problem i liczę że jakoś mi pomozecie. Mam sobie edytor w JS
> i potrzebuję wyciągnąć z niego bez przeładowania zawartość (czyli to
> co się wpisuje)

Poszukaj w dokumentacji tegoż edytora.

Slawomir

unread,
Nov 15, 2009, 11:12:09 AM11/15/09
to

> Poszukaj w dokumentacji tegoż edytora

Dokumentacja niestety jest skromna i coś kombinowałem z funkcją
get_content() ale jak robię var zawartosc = document.getElementById
('id_edytor').get_content() czy arr['id_edytor'].get_content() dostaje
błąd.
Cała dokumentacja to tyle: http://code.google.com/p/lwrte/wiki/API
Dla mnie to czarna magia:(

pozdrawiam
Slawek

Paweł Piskorz

unread,
Nov 16, 2009, 5:54:49 AM11/16/09
to
Slawomir wrote:
> Dokumentacja niestety jest skromna i coś kombinowałem z funkcją
> get_content() ale jak robię var zawartosc = document.getElementById
> ('id_edytor').get_content() czy arr['id_edytor'].get_content() dostaje
> błąd.

To bardziej na pl.comp.lang.javascript ;)
Pokaż jak inicjujesz edytor, tj. funkcję którą wywołujesz aby włączyć
edytor na stronie.

Slawomir

unread,
Nov 16, 2009, 6:26:43 AM11/16/09
to

> To bardziej na pl.comp.lang.javascript ;)
> Pokaż jak inicjujesz edytor, tj. funkcję którą wywołujesz aby włączyć
> edytor na stronie.

Nie chciałem dublować wiadomości a generalnie Ci co zaglądają na
pl.comp.javascript też zaglądają tu:)
edytor to tak wywołuje
w JS
$(document).ready(function() {
var arr = $('.rte1').rte({
css: ['style.css'],
controls_rte: rte_toolbar,
controls_html: html_toolbar
});

$('#id_edytor').rte({
css: ['style.css'],
width: 670,
height: 200,
controls_rte: rte_toolbar,
controls_html: html_toolbar
}, arr);
});

później wywołuję w html
<textarea id="id_edytor" class="rte2" name="id_edytor" style="width:
600px"> </textarea>

w ogóle mi nie przekazuje danych z tego edytora (z innych pól
formularza bez problemu) jak zrobię coś takiego
<input type="file" name="filelogo" onchange="this.form.submit();" />

W sumie dlatego chciałem też wyciągnąć te dane w axaj aby je sobie
zapisać do zmiennej sesyjnej i gdy wywoła submit dla tego file to i
tak będę miał zapisaną zawartość textarea
Co dziwne gdy robię normalnie w submit butonem <input
type="submit" ..... to formularz przesyła postem zawartość textarea
czyli tego edytora.
No cienki jestem z tego JS i naprawdę nie wiem co z tym począć:(

pozdrawiam
Sławek

Paweł Piskorz

unread,
Nov 16, 2009, 3:20:58 PM11/16/09
to
Slawomir wrote:
> edytor to tak wywołuje
> w JS
> $(document).ready(function() {
> var arr = $('.rte1').rte({
> css: ['style.css'],
> controls_rte: rte_toolbar,
> controls_html: html_toolbar
> });
>
> $('#id_edytor').rte({
> css: ['style.css'],
> width: 670,
> height: 200,
> controls_rte: rte_toolbar,
> controls_html: html_toolbar
> }, arr);
> });
>
> później wywołuję w html
> <textarea id="id_edytor" class="rte2" name="id_edytor" style="width:
> 600px"> </textarea>

Żeby się później dostać do tego edytora musisz tablicę arr zrobić
publiczną i z niej korzystać:
var arr = new Array();
$(document).ready(function() {


$('.rte1').rte({
css: ['style.css'],
controls_rte: rte_toolbar,
controls_html: html_toolbar

}, arr);

$('#id_edytor').rte({
css: ['style.css'],
width: 670,
height: 200,
controls_rte: rte_toolbar,
controls_html: html_toolbar
}, arr);
});

<button onclick="alert(arr['id_edytor'].get_content())"
type="button">klik</button>
(nie testowałem tego)

Slawomir

unread,
Nov 17, 2009, 4:18:09 AM11/17/09
to
> Żeby się później dostać do tego edytora musisz tablicę arr zrobić
> publiczną i z niej korzystać:
> var arr = new Array();
> $(document).ready(function() {
>         $('.rte1').rte({
>                 css: ['style.css'],
>                 controls_rte: rte_toolbar,
>                 controls_html: html_toolbar
>         }, arr);
>
>         $('#id_edytor').rte({
>                 css: ['style.css'],
>                 width: 670,
>                 height: 200,
>                 controls_rte: rte_toolbar,
>                 controls_html: html_toolbar
>         }, arr);
>
> });
>
> <button onclick="alert(arr['id_edytor'].get_content())"
> type="button">klik</button>
> (nie testowałem tego)

Ok, sprawdzę i dam znać jak to wyszło.
Dzięki

pozdrawiam
Sławek

Slawomir

unread,
Nov 17, 2009, 4:28:32 AM11/17/09
to
Tak, to działa:) To myślę, że juz do axaj'a spokojnie sobie to
wyciągnę.
Wielkie dzięki, bardzo mi pomogłeś.

pozdrawiam
Slawek

0 new messages