Visualizzazione dei risultati da 1 a 5 su 5

Discussione: errore in querystring

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    415

    errore in querystring

    Ciao a tutti,
    ho un form con diversi elementi identificati da un id del tipo 001, 002, 003,... il cui numero varia a seconda delle situazioni. In ASP il numero di questi elementi è dato dalla variabile B.
    Ora vorrei passare i valori degli elementi in un'altra pagina tramite querystring e ho provato ad utilizzare questo codice:

    function eliminagruppi()
    {
    var urlfinale = '';
    var numgruppi=<%=B%>;
    for(i=1;i<=numgruppi;i++)
    {
    var numgruppo="00"+i;
    var valgruppo=document.getElementById('numgruppo').val ue;
    urlfinale = urlfinale + "&" + numgruppo + "=" + valgruppo;
    }
    document.location.href = "gestgruppi.asp?numerogruppi=" + numgruppi + urlfinale
    }

    Mi restituisce un errore "Necessario oggetto" alla riga in cui assegno il valore valgruppo.
    Se provo a sostituire numgruppo con 001 funziona tutto, anche se ovviamente passa il valore dell'elemento 001 a tutti gli elementi. Quindi l'errore è nel getElementById('numgruppo').
    Sapete aiutarmi?
    Grazie!

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    codice:
    var valgruppo=document.getElementById('numgruppo').value;
    Cosi stai dicendo di usare l'elemento la cui id è la stringa 'numgruppo' e non la variabile.
    codice:
    var valgruppo=document.getElementById(numgruppo).value;
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    415
    Avevo provato anche così, ma mi da sempre lo stesso errore.

  4. #4
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Originariamente inviato da Teo80
    Avevo provato anche così, ma mi da sempre lo stesso errore.
    Quindi l'errore sta nel fatto che almeno un elemento non esiste. Perche la soluzione da me indicata deve ovviare il problema.

    Hai guardato il sorgente della pagina generata ?

    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    
    <html>
    <head>
    <title>Untitled</title>
    </head>
    <body>
    <script language="JavaScript" type="text/javascript">
    <!--
    function eliminagruppi() { 
     var urlfinale = ''; 
     var numgruppi=3; 
     for(i=1;i<=numgruppi;i++)  { 
      var numgruppo="00"+i; 
      var valgruppo=document.getElementById(numgruppo).value; 
      urlfinale = urlfinale + "&" + numgruppo + "=" + valgruppo; 
      } 
      // document.location.href = "gestgruppi.asp?numerogruppi=" + numgruppi + urlfinale
    	alert( "gestgruppi.asp?numerogruppi=" + numgruppi + urlfinale);
    } 
    
    //-->
    </script>
    001<input type="text" id="001">
    
    002<input type="text" id="002">
    
    003<input type="text" id="003">
    
    
    <input type="button" value="clicca" onclick="eliminagruppi()"
    </body>
    </html>
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2005
    Messaggi
    415
    Ho capito il problema: quando numgruppi è maggiore di 9, quindi per esempio 10, viene scritto 0010 e non 010.
    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 © 2025 vBulletin Solutions, Inc. All rights reserved.