eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.www › DHTML - zagnieżdżanie formularzy
Ilość wypowiedzi w tym wątku: 15

  • 1. Data: 2012-08-21 19:34:34
    Temat: DHTML - zagnieżdżanie formularzy
    Od: Marek <p...@s...com>

    Witam,

    Czy jest prawidłowe umieszczanie formularza wewnątrz innego? Zauważyłem, że
    nie sprawdza się to pod Chrome ale pod IE oraz FF działa poprawnie.

    Jeśli nie jest to możliwe, to jak rozwiązać następujący problem bez
    przeładowywania strony/otwierania innego okna?

    - mamy formularz z wieloma polami
    - klikamy na jednym z pól
    - otwiera nam się podformularz pozwalający np. dodać miasto do bazy danych,
    z którego będzie korzystał główny formularz. Klikamy ok -> zapis do bazy
    następuje.


  • 2. Data: 2012-08-21 22:08:16
    Temat: Re: DHTML - zagnieżdżanie formularzy
    Od: Exe Very Cute <k...@p...onIet.pl>

    W dniu 2012-08-21 19:34, Marek pisze:
    > Witam,
    >
    > Czy jest prawidłowe umieszczanie formularza wewnątrz innego?

    Nie bardzo.

    > - mamy formularz z wieloma polami
    > - klikamy na jednym z pól
    > - otwiera nam się podformularz pozwalający np. dodać miasto do bazy danych,
    > z którego będzie korzystał główny formularz. Klikamy ok -> zapis do bazy
    > następuje.

    Nowy <form> dodać po tagu zamykającym główną formę, lub tuż przez
    </body>. Pozycjonowanie załatwić CSSem. Resztę - zapis miasta i
    odświeżenie pola "miasto" głównego formularza załatwić XHR.

    Pozdr
    Exe Very Cute



  • 3. Data: 2012-08-21 22:28:41
    Temat: Re: DHTML - zagnieżdżanie formularzy
    Od: Marek <p...@s...com>

    Dnia Tue, 21 Aug 2012 22:08:16 +0200, Exe Very Cute napisał(a):

    >
    > Nowy <form> dodać po tagu zamykającym główną formę, lub tuż przez
    > </body>. Pozycjonowanie załatwić CSSem.

    Też tak kombinowałem. Jednakże z pozycjonowaniem mam kłopot. Chciałbym aby
    pole edycyjne wyskakiwało obok pola głównego formularza. Początkowo
    kombinowałem z umieszczeniem treści drugiego okna w <label> w formularzu
    głównym i następnie pozycjonowałem absolutnie to okno. Wtedy <label> robił
    za odniesienie. Natomiast gdy przeniosę okno na zewnątrz - nie będę miał
    jak pozycjonować względem innego elementu. Może znasz jakąś sztuczkę?


  • 4. Data: 2012-08-21 23:25:55
    Temat: Re: DHTML - zagnieżdżanie formularzy
    Od: Exe Very Cute <k...@p...onIet.pl>

    W dniu 2012-08-21 22:28, Marek pisze:
    > Dnia Tue, 21 Aug 2012 22:08:16 +0200, Exe Very Cute napisał(a):
    >
    >>
    >> Nowy <form> dodać po tagu zamykającym główną formę, lub tuż przez
    >> </body>. Pozycjonowanie załatwić CSSem.
    >
    > Też tak kombinowałem. Jednakże z pozycjonowaniem mam kłopot. Chciałbym aby
    [8<]
    > jak pozycjonować względem innego elementu. Może znasz jakąś sztuczkę?
    >

    Hmmm... tak bym obrazowo kombinował:

    <input type="text" name="miasto" onclick="pokaMiasta(this);" readonly>

    function pokaMiasta(elm)
    {
    f=document.createElement('form');
    p=elm.parentNode;
    // tutaj dodajemy elementy nowej formy, np. już wcześniejszą listę
    miast z bazy zapisaną w JSowej tabelce
    f.style.position='absolute'; // lub fixed

    ox=obliczOffsetPion(elm);
    oy=obliczOffsetPoziom(elm);
    f.style.top=ox+'px';
    f.style.left=oy+'px';
    f.setAttribute('id','dupa');
    document.body.appendChild(f);

    f.onsubmit=function()
    {
    // tutaj zapisuję formę XHR
    XHR.complete=function()
    {
    // tutaj odświeżam pole "miasto"
    document.body.removeChild(document.getElementById('d
    upa'));
    }
    }
    return!1;
    }

    Czy jakoś tak ;-]
    Ewentualnie document.elm.parentNode.insertBefore(f,
    elm.parentNode.nextSibling); (czy jakoś tak) i zabawa w ox i oy relatywnie.

    Pozdr
    Exe Very Cute



  • 5. Data: 2012-08-22 09:19:49
    Temat: Re: DHTML - zagnieżdżanie formularzy
    Od: Marek <p...@s...com>

    Dnia Tue, 21 Aug 2012 23:25:55 +0200, Exe Very Cute napisał(a):

    > Hmmm... tak bym obrazowo kombinował:

    Czyli pozycjonowanie zlecasz JSowi? Chciałem uniknąć programowania w
    miejscu projektowania. Ale skoro sie nie da...

    A co sądzisz o wykorzystaniu iframe'ów w celu uniknięcia programowania? Czy
    niesie to jakieś niebezpieczeństwa lub niedogodności? Widziałem, że tak
    sobie radzi np. Facebook.


  • 6. Data: 2012-08-22 10:26:03
    Temat: Re: DHTML - zagnieżdżanie formularzy
    Od: Exe Very Cute <k...@p...onIet.pl>

    W dniu 2012-08-22 09:19, Marek pisze:
    > Dnia Tue, 21 Aug 2012 23:25:55 +0200, Exe Very Cute napisał(a):
    >
    >> Hmmm... tak bym obrazowo kombinował:
    >
    > Czyli pozycjonowanie zlecasz JSowi? Chciałem uniknąć programowania w
    > miejscu projektowania. Ale skoro sie nie da...

    Da.

    >
    > A co sądzisz o wykorzystaniu iframe'ów w celu uniknięcia programowania? Czy
    > niesie to jakieś niebezpieczeństwa lub niedogodności? Widziałem, że tak
    > sobie radzi np. Facebook.

    Bleh. I odchodzi od nich.

    A takie coś? Masz wygląd w CSS cały:

    http://www.airmedia.pl/test.html

    Pozdr
    Exe Very Cute


  • 7. Data: 2012-08-23 00:28:51
    Temat: Re: DHTML - zagnieżdżanie formularzy
    Od: Marek <p...@s...com>

    Dnia Wed, 22 Aug 2012 10:26:03 +0200, Exe Very Cute napisał(a):

    > Bleh. I odchodzi od nich.

    Za to Google Adsense, Google+ z istnym rozmachem wdrożyły to od czego
    Facebook ucieka :-)

    > A takie coś? Masz wygląd w CSS cały:
    >
    > http://www.airmedia.pl/test.html

    Fajne, ale tam jest tylko jeden formularz, których chyba nie powinien
    pełnić N funkcji jednocześnie?
    W takim wykonaniu sekcja "coś tam" musiałaby wykonać czynności:
    1. sprawdzić czy misto jest nowe czy dopisane
    2. jeśli dopisane to zapisać nowe miasto do bazy,
    3. pobrać ID tego miasta
    4. zapisać Pole 1 i ID miasta do innej struktury: np. danych kontaktowych
    jesli założyć, że robimy formularz kontaktowy (dla uproszczenia rozważań)

    Wydaje mi się, że to szare okienko powinno mieć autonomiczną
    funkcjonalność. Czyli to ono powinno być niejako drugim formularzem, który
    dopisuje do bazy nowe miasto i przekazuje jego ID do formularza "rodzica".
    Natomiast pierwszy formularz "rodzic" powinien potrafić tylko zapisywać do
    bazy kontaktów a nie łączyć obie te funkcje jednocześnie. W przypadku
    gdybyśmy mieli więcej pól "miastopodobnych", to ciężko byłoby zapanować nad
    całością od strony programistycznej.


  • 8. Data: 2012-08-23 01:45:18
    Temat: Re: DHTML - zagnieżdżanie formularzy
    Od: Exe Very Cute <k...@p...onIet.pl>

    W dniu 2012-08-23 00:28, Marek pisze:
    > Dnia Wed, 22 Aug 2012 10:26:03 +0200, Exe Very Cute napisał(a):
    >
    >> Bleh. I odchodzi od nich.
    >
    > Za to Google Adsense, Google+ z istnym rozmachem wdrożyły to od czego
    > Facebook ucieka :-)

    Bo iframe jest wygodny. Głównie o tyle, że żadne istniejące CSS czy
    skrypty nie mają wpływu na to co się w ramce znajduje. Ale u progu
    HTML5? Zauważ że GA powstało już jakiś czas temu.

    > Fajne, ale tam jest tylko jeden formularz, których chyba nie powinien
    > pełnić N funkcji jednocześnie?

    I może.

    > W takim wykonaniu sekcja "coś tam" musiałaby wykonać czynności:
    > 1. sprawdzić czy misto jest nowe czy dopisane
    > 2. jeśli dopisane to zapisać nowe miasto do bazy,
    > 3. pobrać ID tego miasta
    > 4. zapisać Pole 1 i ID miasta do innej struktury: np. danych kontaktowych

    No to wszystko możesz zrobić jednym wywołaniem XHR, w funkcji powrotnej
    sobie układasz dane w formularzu "głównym".

    > jesli założyć, że robimy formularz kontaktowy (dla uproszczenia rozważań)
    >
    > Wydaje mi się, że to szare okienko powinno mieć autonomiczną
    > funkcjonalność. Czyli to ono powinno być niejako drugim formularzem, który
    > dopisuje do bazy nowe miasto i przekazuje jego ID do formularza "rodzica".
    > Natomiast pierwszy formularz "rodzic" powinien potrafić tylko zapisywać do
    > bazy kontaktów a nie łączyć obie te funkcje jednocześnie.

    Jak wyżej. Jest autonomiczne, i samo się usuwa po wykonaniu zadania z DOM.

    > gdybyśmy mieli więcej pól "miastopodobnych", to ciężko byłoby zapanować nad
    > całością od strony programistycznej.

    Wcale nie, przecież łatwo jest ten skrypt przerobić na "wersję elastyczną".

    Pozdr
    Exe Very Cute



  • 9. Data: 2012-08-23 03:34:36
    Temat: Re: DHTML - zagnieżdżanie formularzy
    Od: Exe Very Cute <k...@p...onIet.pl>

    W dniu 2012-08-23 00:28, Marek pisze:

    > Wydaje mi się, że to szare okienko powinno mieć autonomiczną
    > funkcjonalność. Czyli to ono powinno być niejako drugim formularzem, który
    > dopisuje do bazy nowe miasto i przekazuje jego ID do formularza "rodzica".
    > Natomiast pierwszy formularz "rodzic" powinien potrafić tylko zapisywać do
    > bazy kontaktów a nie łączyć obie te funkcje jednocześnie. W przypadku
    > gdybyśmy mieli więcej pól "miastopodobnych", to ciężko byłoby zapanować nad
    > całością od strony programistycznej.

    Żeby nie było że się nie da:
    http://www.airmedia.pl/test2.html

    :P

    Pozdr
    Exe Very Cute




  • 10. Data: 2012-08-23 10:28:53
    Temat: Re: DHTML - zagnieżdżanie formularzy
    Od: Marek <p...@s...com>

    Dnia Thu, 23 Aug 2012 01:45:18 +0200, Exe Very Cute napisał(a):

    >> Fajne, ale tam jest tylko jeden formularz, których chyba nie powinien
    >> pełnić N funkcji jednocześnie?
    >
    > I może.

    Przemyślę koncepcję głębiej. Bo może masz rację.

    >
    > Jak wyżej. Jest autonomiczne, i samo się usuwa po wykonaniu zadania z DOM.

    Autonomiczne - miałem na myśli drugą strone jego obsługi: czyli, że to okno
    dokonuje dopisania miasta do bazy a formularz główny o tym nic nie wie lecz
    tylko korzysta z tych danych. Czyli okienko pełni funkcję autonomicznego
    edytora. Wtedy zyskujemy jeszcze jedną cechę: mozna ten modulik programowy
    wykorzystać w wielu miejscach aplikacji bez kodowania.

strony : [ 1 ] . 2


Szukaj w grupach

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: