Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135

    Errore : Stringa non è definito

    Ciao.

    Mi fate capire dove sbaglio?

    L'errore è 'stringa non è definito'.... perchè?

    Devo fare in modo di costruire, tramite javascript, un' unica stringa con i singoli valori selezionati nel form dati che contiene campi di testo, select e checkbox.

    codice:
    function Re(stringa) {
    
       for(i=0; i<7;i++){ stringa+=document.getElementById('test'+i).value;}
       
            
            return stringa.substr();
       
    }
    
    <select size="1" id=test_1" name="test_1">
    ...
    </select>
    
    <select size="1" id=test_2" name="test_2">
    ...
    </select>
    
    <select size="1" id=test_3" name="test_3">
    ...
    </select>
    
    ....
    
    ...
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  2. #2
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    Adesso l'errore è 'Necessario oggetto':

    codice:
    function Re(stringa) {
    
       var s = "";
       for(i=0; i<7;i++)
    
    { 
    
    
    stringa +=  "," + document.getElementById('test'+i).value;
    
    
    }
       
            
            return stringa.substr();
       
    }
    
    <select size="1" id=test_1" name="test_1">
    ...
    </select>
    
    <select size="1" id=test_2" name="test_2">
    ...
    </select>
    
    <select size="1" id=test_3" name="test_3">
    ...
    </select>
    
    ...
    
    <a href="#" onclick="Re();return false;">
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  3. #3
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    scusa ma stringa parte gia' concatenando qualcosa?

    var stringa='';
    poi aggiungi
    stringa+='quello che vuoi';

  4. #4
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    Originariamente inviato da Xinod
    scusa ma stringa parte gia' concatenando qualcosa?

    var stringa='';
    poi aggiungi
    stringa+='quello che vuoi';

    grazie x aver risposto, ma non cambia nulla:

    codice:
    function Re(stringa) {
    
       var stringa = "";
       for(i=0; i<7;i++)
    
    { 
    
    
    stringa +=  document.getElementById('test_'+i).value;
    
    
    }
    
    
            return stringa.substr();
       
    }
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  5. #5
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    occhio che mancano degli apici

    ...id=test_1" ...
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  6. #6
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    Originariamente inviato da fcaldera
    occhio che mancano degli apici

    ...id=test_1" ...
    si grazie, ma avevo già corretto la svista... davvero non so che sbaglio...
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  7. #7
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    nel tuo codice non lo vedo
    ma esiste document.getElementById('test_0') ?

    e tutti gli altri da test0 a test6?
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  8. #8
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    Originariamente inviato da fcaldera
    nel tuo codice non lo vedo
    ma esiste document.getElementById('test_0') ?

    e tutti gli altri da test0 a test6?
    Intanto non so a priori di quanti campi sarà composto il form, perchè l'estrazione è con un lunguaggio lato server.

    Ecco quello che ho nel form:

    codice:
    <select size="1" id="test_1" name="test_1">
    ...
    </select>
    
    <select size="1" id="test_2" name="test_2">
    ...
    </select>
    
    <select size="1" id="test_3" name="test_3">
    ...
    </select>
    ...
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

  9. #9
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    Originariamente inviato da [trodat]
    non so a priori di quanti campi sarà composto il form
    tu non lo sai, ma allo script dici di cercare fino a test_6
    appena non ne trova uno da errore perche' per lui parli di cose che non esistono

    come minimo fai
    codice:
    if(document.getElementById('test_'+i)){
      stringa +=  document.getElementById('test_'+i).value;
    }
    se invece vuoi sistemare per bene ci sono varie vie seguibili,
    visto che parli di vari elementi nel form cicla per la lunghezza degli elements del form
    codice:
    var f=document.getElementById('id_form')
    for(var k=0;k<f.elements.length;k++){
      f.elements[k] <-- questo e' il riferimento ai singoli campi, di qualsiasi tipo essi siano
    }
    ciao

  10. #10
    Utente di HTML.it L'avatar di [trodat]
    Registrato dal
    Oct 2004
    Messaggi
    2,135
    grazie, però continua a dare errore sulla riga rossa:

    codice:
    <script language="javascript" type="text/javascript">
    <!--
    
    
    function Re(stringa) 
     
    {
     
     
    var f=document.getElementById('id_form')
    
    for(var k=0;k<f.elements.length;k++){
      f.elements[k]
    }
    
               
            return f.substr(); 
       
    }
     
    
    
    //-->
    </script>
    
    </head>
    
    <body>
     
    <form id="id_form" name="myform">
    
    ...
    
    <select size="1" id="test_1" name="test_1">
    ...
    </select>
    
    <select size="1" id="test_2" name="test_2">
    ...
    </select>
    
    <select size="1" id="test_3" name="test_3">
    ...
    </select>
    ...
    
    <a href="#" onclick="Re();return false;">
    Lo Stato dà un posto. L’impresa privata dà un lavoro. – Indro Montanelli

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