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

    Ciclo for e getelementbyid

    Salve ho creato questa funzione :

    codice:
    function mostracopertina(){
        
        for(var i=1 , i<=12 ,i++){
            var foto ='foto'+i;
            var cop ='cop'+i;
            
            if(document.scelta_immagini.foto.checked){
                
                document.getElementById(cop).style.display = 'inline';
                
                
            }
            else{
                document.getElementById(cop).style.display = 'none';
            }
        }
        
        
    }
    Vorrei che nell' if else dentro al for venga sostituito al nome della variabile il contenuto ad esempio nell 'if al posto di foto ci sia foto1 foto2 ecc così come al posto di cop .

    Perchè invece viene riscritto solamente ?

  2. #2
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,771
    Ciao, stai sbagliando approccio. Per accedere dinamicamente alle proprietà di un oggetto dovresti utilizzare la notazione a parentesi quadre:
    codice:
    if(document.scelta_immagini[foto].checked){
    Deduco che ti mancano delle nozioni base sulla programmazione ad oggetti in JavaScript.
    Può essere utile dare uno sguardo a qualche guida di base, ad esempio questa.
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  3. #3
    Quote Originariamente inviata da KillerWorm Visualizza il messaggio
    Ciao, stai sbagliando approccio. Per accedere dinamicamente alle proprietà di un oggetto dovresti utilizzare la notazione a parentesi quadre:
    codice:
    if(document.scelta_immagini[foto].checked){
    Deduco che ti mancano delle nozioni base sulla programmazione ad oggetti in JavaScript.
    Può essere utile dare uno sguardo a qualche guida di base, ad esempio questa.
    La console di chrome mi dice : Unexpected token [

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    posta l'html della pagina

  5. #5
    Quote Originariamente inviata da Vindav Visualizza il messaggio
    posta l'html della pagina
    Eccolo è codice creato con php:

    codice:
    <form name="scelta_immagini" method="POST" action="immagine_scelta.php">
    <input type="hidden" name="imgselect" value="X">
    
    
    
    
    							<div class="col-md-3">
    	
    
    
    
    
    				 		<input type="checkbox" name="foto1" value="1" id="fotoimm1" onClick="numimmagini(this);check_allok();mostracopertina();" />
    						<br/>
    						<div id="cop1">
    						SELEZIONA QUESTA IMMAGINE COME IMMAGINE DI COPERTINA<input type="radio" name="copertina" value="1"/>
    						</div>
    														</div>
    
    
    									</div>
    
    
    							<div class="col-md-3">
    
    
    
    
    				 		<input type="checkbox" name="foto2" value="1" id="fotoimm2" onClick="numimmagini(this);check_allok();mostracopertina();" />
    						<br/>
    						<div id="cop2">
    						SELEZIONA QUESTA IMMAGINE COME IMMAGINE DI COPERTINA<input type="radio" name="copertina" value="2"/>
    						</div>
    													</div>
    
    
    						<div class="row">
    						<div class="col-md-3">
    
    
    				 		<input type="checkbox" name="foto3" value="1" id="fotoimm3" onClick="numimmagini(this);check_allok();mostracopertina();" />
    						<br/>
    						<div id="cop3">
    						SELEZIONA QUESTA IMMAGINE COME IMMAGINE DI COPERTINA<input type="radio" name="copertina" value="3"/>
    						</div>
    													</div>
    
    
    							<div class="col-md-3">
    
    
    
    
    
    
    				 		<input type="checkbox" name="foto4" value="1" id="fotoimm4" onClick="numimmagini(this);check_allok();mostracopertina();" />
    						<br/>
    						<div id="cop4">
    						SELEZIONA QUESTA IMMAGINE COME IMMAGINE DI COPERTINA<input type="radio" name="copertina" value="4"/>
    						</div>
    													</div>
    
    
    
    
    					</div>
    
    
    			<hr/>
    
    
    
    
    							<div class="col-md-3">
    
    
    
    
    				 		<input type="checkbox" name="foto5" value="1" id="fotoimm5" onClick="numimmagini(this);check_allok();mostracopertina();" />
    						<br/>
    						<div id="cop5">
    						SELEZIONA QUESTA IMMAGINE COME IMMAGINE DI COPERTINA<input type="radio" name="copertina" value="5"/>
    						</div>
    													</div>
    
    
    							<div class="col-md-3">
    
    
    
    
    
    
    																	</div>
    
    
    
    
    							<div class="col-md-3">
    	
    																	</div>
    
    
    							<div class="col-md-3">
    
    
    																	</div>
    
    
    
    
    						<div class="row">
    						<div class="col-md-3">
    
    
    																	</div>
    
    
    
    
    							<div class="col-md-3">
    
    
    
    
    				 		<input type="checkbox" name="foto12" value="1" id="fotoimm12" onClick="numimmagini(this);check_allok();mostracopertina();" />
    						<br/>
    						<div id="cop12">
    						SELEZIONA QUESTA IMMAGINE COME IMMAGINE DI COPERTINA<input type="radio" name="copertina" value="12"/>
    						</div>
    													</div>
    
    
    
    
    					</div>
    
    
    			<hr/>
    
    
    							<div class="col-md-3">
    																	</div>
    
    
    							<div class="col-md-3">
    																	</div>
    
    
    
    
    	
    
    
    
    
    							<div class="col-md-3">
    		
    
    
    
    
    																	</div>
    
    
    							<div class="col-md-3">
    
    
    
    
    																	</div>
    
    
    
    
    
    
    
    
    
    
    
    
    <div class="row">
    	<div class="col-md-12 text-center">
    
    
    			<button type="button" id="invio_offerta" onclick = "document.scelta_immagini.submit()"  >
    			CARICA L'IMMAGINE
    			</button>
    	</div>
    </div>
    
    
    
    
    </form>

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    i div dove si trovano le copertine sono tutti nascosti in partenza? se si penso che il ciclo sia inutile puoi fare qualcosa del genere:

    codice:
    function mostracopertina(foto_sel){
        index = foto_sel.name.replace("foto", "");
            if(foto_sel.checked){
                
                document.getElementById("cop"+index).style.display = 'inline';
                
                
            }
            else{
                document.getElementById("cop"+index).style.display = 'none';
            }
        }
    la funziona va richiamata cosi: mostracopertina(this);

  7. #7
    Quote Originariamente inviata da Vindav Visualizza il messaggio
    i div dove si trovano le copertine sono tutti nascosti in partenza? se si penso che il ciclo sia inutile puoi fare qualcosa del genere:

    codice:
    function mostracopertina(foto_sel){
        index = foto_sel.name.replace("foto", "");
            if(foto_sel.checked){
                
                document.getElementById("cop"+index).style.display = 'inline';
                
                
            }
            else{
                document.getElementById("cop"+index).style.display = 'none';
            }
        }
    la funziona va richiamata cosi: mostracopertina(this);

    Funziona grazie ....

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.