Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Creazione di combobox dinamiche tramite javascript



    questa funzione permette di aggiornare dinamicamente alcune combobox collegate tra loro....
    per compilarle senza dover ricaricare la pagina tutte le volte,mi sono dovuto creare degli array con i valori da inserire......

    problema:

    1)è da ieri che utilizzo il javascript

    2)voglio impedire che in questa combo vengano inserite + voci uguali...

    ecco il codice:

    j=1;
    i=0;__do {
    //1° elemento
    if(i=0) || document.form.combo.options[j] = new Option(array[i]+" ; "+array2[i], array[i], false, false);

    //dal 2° elemento in poi
    if((i>0) && (array[i] <> array[i - 1]))
    {
    document.form.combo.options[j] = new Option(array[i]+" ; "+array2[i], array[i], false, false);
    j++;
    }//end if
    i++;
    }
    while(i<array.length);
    }

    avrei bisogno di sapere cosa sbaglio nell'if,percè di sicuro ho scritto una baggianata...

    grazie

  2. #2
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367

    Re: Creazione di combobox dinamiche tramite javascript

    Ciao HULK_HOGAN,

    cosa vuoi controllare nella if? Che l'elemento dell'array sia diverso dal suo precedente? In javascript il diverso non è <> ma !=

  3. #3

    grazie mille...adesso provo...

    nb.

    nell'errore precedente il messaggio restituito era 'Previsto oggetto'

  4. #4
    ..mentre adesso errore di sintassi....sono proprio un maiale

  5. #5
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    beh.. prima avevo guardato solo l'ultima if :gren:
    per un confronto di uguaglianza devi usare due uguali ==
    (con uno solo fai un'assegnazione)
    il nome del form sarebbe meglio se fosse diverso da form (che è una parola riservata)
    invece di usare j come indice delle option è meglio usare la lunghezza delle options (.length)
    codice:
    i=0;
    oo = document.NomeForm.combo.options
    do{
      //1° elemento 
      if(i==0)oo[oo.length] = new Option(array[i]+" ; "+array2[i], array[i], false, false); 
    
      //dal 2° elemento in poi 
      if((i>0) && (array[i] != array[i-1]))
        oo[oo.length] = new Option(array[i]+" ; "+array2[i], array[i], false, false); 
      i++
    } while(i<array.length)

  6. #6
    adesso provo...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.