Visualizzazione dei risultati da 1 a 6 su 6

Discussione: popolare select

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    322

    popolare select

    Ciao a tutti... Tramite l'evento onChange di una select ne devo popolare un'altra che all'apertura della pagina risulta cosi vuota:

    codice:
    <select name="prodotti" id="prodotti" size="10" >
    </select>
    Questa funzione js mi dovrebbe popolare la mia select:

    codice:
    function updatePage(){
    	if(xmlHttp.readyState == 4){
    		var response = xmlHttp.responseText;
    		var record = response.split(/\|/); 
    		  document.getElementById("prodotti").value = null;
    		  for (var i=0; i<record.length; i++){  // loop su tutti i pezzi
    			//se il primo carattere di ogni vettore è uguale selezionata
    			document.getElementById("prodotti").options[i] = new Option (record[i], record[i]);
    		  }
    	}
    }


    in poche parole quando entro nel ciclo for ho dei valori con questo formata:

    id,descrizione

    Io dovrei fare in modo che l'id diventi il value delle option delle select mentre la descrizione appaia come contenuto dell'option.

    spero di essere stato abbastanza chiaro...

    Ciao e grazie

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    322


    nessuno riesce ad aiutarmi?

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    322
    ok, forse ho risolto... mi manca solo una cosa prima di caricare il ciclo degli elementi x popolare la select la devo svuotare... come faccio?? esiste un comando tipo clear?

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    new Option(testo,valore)
    non capisco cosa ottieni in risposta alla richiesta asincrona, ma gia' fai quanto chiedi settando testo e value = a record[i]
    ciao

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    cicla al contrario settando le option a null
    codice:
    var obj=document.getElementById("prodotti")
    for (var k=obj.length;k>0;k--){
    obj.options[k-1]=null;
    }

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    322
    Nn so se è corretto, cmq ho risolto in questo sistema:

    codice:
    function updatePage(){
    	if(xmlHttp.readyState == 4){
    		var response = xmlHttp.responseText;
    		var record = response.split(/\|/); 
    		  for(var k=document.getElementById("prodotti").length;k>0;k--){
    		  	document.getElementById("prodotti").options[k-1]=null;
    		  }
    		  for (var i=0; i<record.length; i++){  // loop su tutti i pezzi
    			var valore = record[i].split(',');
    			//se il primo carattere di ogni vettore è uguale selezionata
    			document.getElementById("prodotti").options[i] = new Option (valore[1], valore[0]);
    		  }
    	}
    }
    Grazie x l'aiuto...

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.