Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Problema OnClick

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    77

    Problema OnClick

    ragazzi vi posto il codice che ho sviluppato ... in pratica creo un Array e con il bobble sort lo organizzo .... però ce un problema quando creo un bottone e dentro vi metto "onclick="Stampa()" l'array non lo legge ... capirete meglio quando lo provate perfavore aiutoo

    • <html>
      <body>
      <script language="javascript">
      var grand = prompt("Quanti elementi vuoi inserire ?","");
      var array = new Array (grand);

      for(x=0;x<grand;x++)
      array[x]=prompt("Inserisci elemento","");

      alert(array[1]);

      //ordinamento
      for(var i in array)
      for(var j in array)
      {
      if(array[i] < array[j])
      {
      var tmp =String(array[i]);
      array[i]=String(array[j]);
      array[j]=String(tmp);
      }
      }
      function Stampa(array)
      {
      alert(array[0]);
      for(var x in array)
      document.write(String(array[x]+"
      "))
      }


      </script>

      <div><input type="button" name="btn1" value="Ordina" onclick="Stampa()"></input></div>
      <div></div>
      </body>
      </html>

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    correggi :

    function Stampa()

    Comunque non puoi usare document.write() all'interno di una funzione, cerca "innerHTML"

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Puoi usare document.write dentro ad una funzione, ma devi richiamarla da uno script nel body (non nall'header html) e l'output del write verrà inserito nella pagina alla altezza dello script.

    Visto quello che prefiggi credo proprio che innerHTML sia la cosa migliore.
    Tecnolgie per l'arte.
    Arti per la tecnologia.
    softhare

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    77
    ho guardato ma non mi funziona ... devo stampare l'array mi puoi postare il codice perfavore ?

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2008
    Messaggi
    77
    ho risolto ora però ho un altro problema ... ho aggiunto una variante ... un altra function che stampa ... solo che se uso il document.write mi va in un altra pagina è forse perdo i dati e quindi non posso stampare ... guardate


    codice:
    <html>
    <body>
    <script language="javascript">
    var grand;
    var array = new Array (grand);
    
    
    function Dati()
    {
    
    grand = prompt("Quanti elementi vuoi inserire ?","");
    for(x=0;x<grand;x++)
      array[x]=prompt("Inserisci elemento","");
    
      
      //ordinamento
      for(var i in array)
       for(var j in array)
     	{
         if(array[i] < array[j])
    	 {
    	    var tmp =String(array[i]);
    		array[i]=String(array[j]);
    		array[j]=String(tmp);
    	 }
    	}
    
    }
    	
     function Stampa()
     { 
      for(var x in array)
        document.write(array[x]+"
    ");
     }
     
     function Ciao()
     { 
      alert(array[0]);
      for(var x in array)
        document.write(array[x]+"
    ");
     }
    
    </script>
    <div><input type="button" name="btn2" value="Dati" onclick="Dati()"></div>
    <div><input type="button" name="btn1" value="Stampa" onclick="Stampa()"></div>
    <div><input type="button" name="btnC" value="Ciao" onclick="Ciao()"></div>
    <div></div>
    </body>
    </html>

  6. #6
    Ecco:

    codice:
    <html>
    <body onload="Crea();">
    <script language="javascript">
    var grand = prompt("Quanti elementi vuoi inserire ?","");
    var array = new Array ();
    
    function Crea(){
    for(x=0;x<grand;x++)
    array[x]=prompt("Inserisci elemento","");
    //ordinamento
    for(var i in array)
    for(var j in array)
    {
    if(array[i] < array[j])
    {
    var tmp =String(array[i]);
    array[i]=String(array[j]);
    array[j]=String(tmp);
    }
    }
    };
    
    function Stampa(){ 
    var buffer="";
    for(var x in array){
    buffer += String(array[x]+"
    ");
    }
    var handler=(document.getElementById?document.getElementById("areaStampa"):document.all["areaStampa"]);
    handler.innerHTML=buffer;
    };
    </script>
    
    <div><input type="button" name="btn1" value="Ordina" onclick="Stampa();"></input></div>
    <div id="areaStampa"></div>
    </body>
    </html>
    Forse c'è qualcosa da sistemare: ad esempio non ho capito a cosa ti servivano quegli
    alert(array[0])

    Almeno fossero stati alert(array[x])...
    Tecnolgie per l'arte.
    Arti per la tecnologia.
    softhare

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.