Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Contare campi dinamici

  1. #1

    Contare campi dinamici

    Ciao a tutti,
    ho un form dinamico.
    Utilizzo la funzione "createElement" per creare i campi che mi servono e li chiamo "campo[]", però partendo da 3 elementi e creandone dinamicamente uno alla volta, perchè se calcolo il numero di campi "campo[]" (utilizzando: document.all['campo[]'].length), questa ritorna sempre il valore 3?

    Non riesco ad uscirne..

    Grazie e ciao...

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    invece
    document.nomeTuoForm.elements['campo[]'].length
    cosa restituisce?

  3. #3
    La stessa identica cosa..cmq forse ho trovato una soluzione, ma ci penserò domani dato che per oggi la mia giornata lavorativa è terminata...se trovate una soluzione scrivetemela lo stesso, la vedrò domani...ciaoo

  4. #4
    Allora ho capito che la stringa :

    var campi = document.all['campo[]'].length;

    va messa fuori da ogni funzione js e alla fine del codice xkè se la metto all'inizio rileva sempre e solo i campi iniziali, cioè solo quelli già esistenti e non quelli creati successivamente, anche se la incremento (in quanto la pagina non viene ricaricata).
    Però ora ho un problema, ho un campo che si chiama marchiCat[] e uno che si chiama marchiEsp[].

    Se scrivo così: var campiEsp = document.all['marchiEsp[]'].length;
    mi ritorna giustamente il numero totale di marchiEsp iniziali.

    mentre se scrivo così: var campiCat = document.all['marchiCat[]'].length;
    mi ritorna undefined!!!

    E il bello sapete qual è?? Che se metto value invece di length, mi scrive correttamente il valore...

    Come mai?? Cosa c'è di diverso??

    Grazie

  5. #5
    Ho scopertoooooo....
    Se il campo è singolo, la lunghezza è undefined, altrimenti la ritorna giusta.
    I campi marchiEsp[] erano 4, mentre marchiCat era soltanto uno...ecco il problema!!


    Ciaoo

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.