Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    3

    generazione html con innerHTML

    Buona giornata a tutti.

    Con questa funzione:

    function addRow2(id)
    {
    document.getElementById("tabella2").innerHTML += "<tr><td>3</td><td>3</td><td>3</td></tr>";
    }

    e il codice html:

    <input name="aggiungi_riga" type="button" id="aggiungi_riga" onclick="addRow2()" value="Aggiungi riga" />
    <table width="464" border="0" id="tabella2">
    <tr>
    <td>1</td>
    <td>1</td>
    <td>1</td>
    </tr>
    <tr>
    <td>2</td>
    <td>2</td>
    <td>2</td>
    </tr>
    </table>

    creiamo una tabella alla quale cliccando il bottone aggiungiamo delle righe.

    Il tutto funziona, ma se visualizzo dal browser il codice html non vedo le righe create da javascript. Il mio problema è che alla fine con un submit devo inviare allo script php i dati inseriti nella tabella... che però non hanno un name!?!?

    Qualcuno sa aiutarmi??

    Grazie in anticipo.
    Butta

  2. #2
    La generazione di contenuto cruciale via javascript è ritenuto un errore.

    I motivi risiedono appunto nel fatto che l'apparizione delle informazioni in questione dipende strettamente da javascript, e nel caso questo fosse disabilitato o non presente sulla macchina dell'utente, il contenuto non verrebbe generato e pertanto non sarebbe fruibile.

    Sarebbe meglio sfruttare un meccanismo lato server, usando ad esempio PHP.

    Comunque, non credo di aver capito bene il problema riguardante il passaggio dei dati allo script PHP: cos'è che vorresti fare, di preciso?

  3. #3
    non potrai mai vedere il javascript "compilato" se è quello che intendi...

    Cmq per il tuo problema basta che l'attributo name glielo fai scrivere con l'innerHTML

    Codice PHP:
    tuodiv.innerHTML "<input name=\"ciccio\".. 
    e via ndare col resto..

    dai diamanti non nasce niente dal letame nascono i fior
    UNGAWA! Tiki Bar
    Villa Camerini

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    3
    Spiego meglio il problema (se vi interessa sto lavorando su framework Seagull).

    Voglio predisporre un modulo di preparazione di un preventivo (che non si sa cosa possa essere lungo .....anche fino 900 righe).
    Per ogni riga compilata del preventivo, voglio che se ne crei un'ulteriore, per poterne compilarne un'altra.
    Alla fine del preventivo l'utente mi clicca Submit e io salvo nel DB i dati tramite PhP.

    Il concetto è che io devo arrivare al PhP con un array formato da tutte le righe inserite e che non so in anticipo quante saranno. Per questo non posso creare la tabella lato server.

    ...non ce ne riesco a venir fuori!!

    Grazie

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Quello che tu vuoi lo puoi fare o lato server, o lato client, o con entrambi.

    Il lato server, per esempio con asp.net è banale, e qui non interessa.
    Da lato client, si può utilizzare il DOM.
    Questa discussione
    http://forum.html.it/forum/showthrea...ggiungere+riga
    credo faccia al caso
    Pietro

  6. #6
    Della seguente cosa non sono sicuro, quindi è un più una domanda che un'affermazione.

    Se io genero un campo input text tramite DOM, esso non viene considerato al momento del submit? Io credo di sì, ma non ho mai provato. Ad esempio:

    codice:
    var campo = document.createElement('input')
       campo.setAttribute('type', 'text')
       campo.setAttribute('value', 'Valore di prova.')
    
    form.appendChild(campo)

  7. #7
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da pierofix
    Della seguente cosa non sono sicuro, quindi è un più una domanda che un'affermazione.

    Se io genero un campo input text tramite DOM, esso non viene considerato al momento del submit? Io credo di sì, ma non ho mai provato. Ad esempio:

    Funziona bene, anzi benissimo, e pure con quel tale browser
    Pietro

  8. #8
    Ah, allora mi sa che abbiamo risolto, no?

    Sarebbe da prevedere un sistema per rendere fruibile la compilazione del preventivo anche in caso di javascript disattivato. Per farla proprio semplice, nella pagina si potrebbero inserire già una decina di righe di campi (o una media plausibile, non so quante ne possa avere un vostro preventivo).

    P.S. Mi raccomando di scrivere una struttura di markup corretta ed accessibile per il form, eh! Niente tabelle! VVoVe: Qui una guida da seguire per ottenere un buon risultato:

    - http://www.webaccessibile.org/argome...to.asp?cat=295

  9. #9
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da pierofix
    Ah, allora mi sa che abbiamo risolto, no?

    Sarebbe da prevedere un sistema per rendere fruibile la compilazione del preventivo anche in caso di javascript disattivato. Per farla proprio semplice, nella pagina si potrebbero inserire già una decina di righe di campi (o una media plausibile, non so quante ne possa avere un vostro preventivo).
    :master: Per una volta tanto non sono daccordo con te

    almeno, nel mio caso particolare, in intranet, l'applicazione è progettata per lavorare con browser obbligato e con protezione standard.
    In questo caso si parla di ben 900 righe e perciò non scarterei la soluzione tutta server che oltretutto è molto più facile da implementare
    Pietro

  10. #10
    Originariamente inviato da pietro09
    :master: Per una volta tanto non sono daccordo con te

    almeno, nel mio caso particolare, in intranet, l'applicazione è progettata per lavorare con browser obbligato e con protezione standard.
    Io ho ovviamente dato per scontato che si tratta di web, non di intranet. Nel caso di un contesto aziendale allora ovviamente le cose sono diverse.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.