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

    mostra tutti i div con id particolare

    Vorrei un link che visualizza tutti i div che hanno l'id che comincia con la stringa "nascondi" e che nascondi tutti i div con id che comincia con "mostra".

    mi spiego meglio:

    questo div deve ricevere tramite jscript lo style display: block:
    codice:
    <div id="nascondi<%=azienda%>" style="display: none;">
    questo div invece deve ricevere lo style display: none:
    codice:
     <div id="mostra<%=azienda%>" style="display: block;">
    Il mio problema è più che altro fare il confronto del testo tramite js

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Solo un'idea (da sviluppare)

    var lista = document.getElementsByTagName('div');
    for(var i=0; i<lista.length; i++) {
    if(lista[i].id.indexOf('mostra')==0) {
    alert ("trovato il div "+lista[i].id);
    lista[i].style.display='none';
    }
    }
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Ok risolto! Grazie per l'aiuto.

    Pubblico il codice:

    HTML:
    CSS:

    codice:
    #apri {
    	display: inline;
    }
    
    #chiudi {
    	display: none;
    }
    JAVASCRIPT:

    codice:
    function ShowAndHideAll(){
    		var apri=document.getElementById("apri")
    		var chiudi=document.getElementById("chiudi")
    		apri.style.display="none";
    		chiudi.style.display="inline";
    		
    		var d=document.getElementsByTagName("div");
    		for (var i=0; i<d.length; i++) {
    				if (d[i].id.indexOf('mostra')==0) { 
    					d[i].style.display="none";
    				}
    				else if (d[i].id.indexOf('nascondi')==0) {
    					 d[i].style.display="block";
    				}
    		}			 		
    }
    
    function ShowAndHideAll2(){
    		var apri=document.getElementById("apri")
    		var chiudi=document.getElementById("chiudi")
    		apri.style.display="inline";
    		chiudi.style.display="none";
    		
    		var d=document.getElementsByTagName("div");
    		for (var i=0; i<d.length; i++) {
    				if (d[i].id.indexOf('mostra')==0) { 
    					d[i].style.display="block";
    				}
    				else if (d[i].id.indexOf('nascondi')==0) {
    					 d[i].style.display="none";
    				}
    		}			 		
    }

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Solo un piccolo errore di sintassi:
    return non e` una funzione, per cui la sintassi return(false); non e` corretta (lo so che IE la accetta, ma altri browser no)
    si scrive:
    return false;

    Inoltre, hai fatto due funzioni praticamente uguali (cambia solo un parametro). Vedi questa modifica:
    codice:
    function ShowAndHideAll(s){
      var s1 = s ? "none" : "block";
      var s2 = s ? "block" : "none";
      var apri=document.getElementById("apri")
      var chiudi=document.getElementById("chiudi")
      apri.style.display = s2;
      chiudi.style.display = s1;
    		
      var d=document.getElementsByTagName("div");
      for (var i=0; i<d.length; i++) {
        if (d[i].id.indexOf('mostra')==0) { 
          d[i].style.display = s1;
        } else if (d[i].id.indexOf('nascondi')==0) {
          d[i].style.display = s2;
        }
      }			 		
    }
    da chiamare rispettivamente con:
    ShowAndHideAll(true);
    ShowAndHideAll(false);
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

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.