Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di dannie
    Registrato dal
    Aug 2005
    Messaggi
    336

    html... non "in ordine"!

    Ciao a tutti! Ho un problema piuttosto grosso... grosso perchè non so neanche con cosa si possa risolvere (html? javascript? css?) e quindi le ricerche sul forum non mi hanno aiutato.... non mi resta che affidarmi alla vostra pietà se ho sbagliato forum su cui postare e soprattutto ai vostri consigli per capire da dove partire....
    In parole povere il mio problema è che vorrei scrivere del testo da visualizzare nella parte "alta" della mia pagina html...ma soltanto a fine pagina so quale testo è! Ok, provo a spiegarmi: ho una pagina html generata da una pagina jsp. Il contenuto di questa pagina html è un lungo form, diviso in vari fieldset. Ora, per facilitare l'inserimento eventualmente solo parziale (ad esempio dei campi di un solo fieldset), dovrei mettere in cima alla pagina dei link ai vari fieldset, in modo che l'utente possa ad esempio decidere di cliccare sull'ultima voce, venire spostato all'ultimo fieldset e riempire solo quello: si tratta cioè di una specie di menu con banali ancore, da visualizzare come preferisco (combo, menu a tendina, semplice testo una dietro l'altra....). Ma il problema è che il form è "dinamico" e conosco il numero e il nome dei fieldset soltanto dopo averli stampati tutti, cioè dopo aver stampato tutto il resto della pagina! Dovrei quindi decidere la composizione di quel menu di inizio pagina dopo aver stampato tutto il resto della pagina.... si può fare (con tecnologie lato client)?
    Spero di essere stata sufficientemente chiara...
    PS Ah, il layout della pagina è fatto con le tabelle... lo so che non è bello, che si dovrebbe passare ai css, sicuramente lo farò, ma per ora....

  2. #2
    Utente di HTML.it L'avatar di nuky
    Registrato dal
    Oct 2001
    Messaggi
    1,053
    La soluzione ideale sarebbe quella di creare la stringa HTML lato server, mentre crei la tua form per poi inserirla dinamicamente in un div alla fine dell'esecuzione della parte che inserisce la form.
    Guarda questo esempio di come puoi risolvere lato client, in questo modo la stringa da creare lato server è molto semplice.
    codice:
    <style>
    fieldset {margin-top:100px}
    </style>
    <body>
      <div id="divLink"></div>
    
      <form>
        <a name="#f1"></a>
        <fieldset>
          <legend>FIELSET1</legend>
          <input value="i1" />
    <input value="i2" />
    <input value="i3" />
    <input value="i4" />
        </fieldset>
      
        <a name="#f2"></a>
        <fieldset>
          <legend>FIELSET2</legend>
          <input value="i1" />
    <input value="i2" />
    <input value="i3" />
    <input value="i4" />
        </fieldset>
      
        <a name="#f3"></a>
        <fieldset>
          <legend>FIELSET3</legend>
          <input value="i1" />
    <input value="i2" />
    <input value="i3" />
    <input value="i4" />
        </fieldset>
      
        <a name="#f4"></a>
        <fieldset>
          <legend>FIELSET4</legend>
          <input value="i1" />
    <input value="i2" />
    <input value="i3" />
    <input value="i4" />
        </fieldset>
      
        <a name="#f5"></a>
        <fieldset>
          <legend>FIELSET5</legend>
          <input value="i1" />
    <input value="i2" />
    <input value="i3" />
    <input value="i4" />
        </fieldset>
      
      </form>
      
      <script language="javascript">
          //Devi generare questa stringa lato server mentre crei i campi
          //Io la forzo lato Javascript per darti un esempio di come fare l'inserimento nel div
          // e di come puoi impostare la pagina
          strLink = "FIELSET1 - "
                  + "FIELSET2 - "
                  + "FIELSET3 - "
                  + "FIELSET4 - "
                  + "FIELSET5   ";
          
          //Inserisci nel div il codice generato lato server
          document.getElementById("divLink").innerHTML = strLink;
      </script>
    </body>
    - "E' un messaggio. E' di Svarion, della terra di Merdor!"
    - "Busto Arsizio?"
    - "Terrazzo, sgabello, formaggio. Borraccia blu, ca**o di gomma e... CANNUCCIA!"
    - "Ca**o dici? C'è scritto «frocio chi legge»!"

  3. #3
    Utente di HTML.it L'avatar di dannie
    Registrato dal
    Aug 2005
    Messaggi
    336
    //Inserisci nel div il codice generato lato server
    document.getElementById("divLink").innerHTML = strLink;
    Ma davvero è così semplice?? Grazieeee!!! Fra poco lo provo!
    Solo una piccola precisazione:
    <style>
    fieldset {margin-top:100px}
    </style>
    serve solo a spaziare i vari fieldset vero? va messo in <head> </head> giusto?

  4. #4
    Utente di HTML.it L'avatar di nuky
    Registrato dal
    Oct 2001
    Messaggi
    1,053
    Sì, è così semplice!

    Il margin l'ho messo per spaziare i fieldset in modo da allungare un po' la pagina per fare le prove.
    Si, va nell'head e si scrive <style "text/css"> per essere precisi.
    L'ho scritto così perché il mio browser non è molto schizzinoso e non faceva parte della richiesta che hai fatto.
    - "E' un messaggio. E' di Svarion, della terra di Merdor!"
    - "Busto Arsizio?"
    - "Terrazzo, sgabello, formaggio. Borraccia blu, ca**o di gomma e... CANNUCCIA!"
    - "Ca**o dici? C'è scritto «frocio chi legge»!"

  5. #5
    Utente di HTML.it L'avatar di dannie
    Registrato dal
    Aug 2005
    Messaggi
    336
    Perfetto! Funziona alla grande, grazie mille!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.