Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2003
    Messaggi
    281

    questo javascript mi inchioda il pc :(

    cavolo, sembrava che ci fossi riuscito, e invece no.....
    per un qualche inspiegabile motivo, questo script provoca il seguente effetto: su explorer, il processo iexplore.exe va ad occupare il 100% della cpu, dopo un po appare il messaggio di errore che mi chiede se voglio interrompere lo script.
    idem firefox

    dove è che questo script è fallato?

    codice:
    	<script type="text/javascript" language="javascript">
    	function Moltiplica(furgoni,macchine,presenze,risultatofurgoni,risultatomacchine) {
    	//verifica valori non nulli
    	var Val1=furgoni.value;
    	//numero di furgoni
    	var Val2=macchine.value;
    	// presenze
    	var Val3=presenze.value;
    	var Val4=Val1*8;
    	var Val5=Val2*4;
    	var Val6=0;
    	var Val7=0;
    	while (Val3>0)
    	{
    	if (Val1>0&&Val3>4)
    	{
    	Val6=Val6+1;
    	Val3=Val3-Val4;
    	}
    	if (Val3>0&&Val2>0)
    	{
    	Val3=Val3-Val5;
    	Val7=Val7+1;
    	}
    	} 
    	risultatofurgoni.value=(isNaN(Val6)?"":Val6);	
    	risultatomacchine.value=(isNaN(Val7)?"":Val7);	
    	}
    	//Moltiplica		
    	</script>	
    	
    	<form action="#" method="post">
    	<div>
    	<select name="furgoni" onchange="Moltiplica(this.form.elements[\'furgoni\'],this.form.elements[\'auto\'],this.form.elements[\'presenze\'],this.form.elements[\'risultatofurgoni\'],this.form.elements[\'risultatomacchine\'])">
    	<option value="">==>>Scegli il numero di furgoni<<==</option>
    	<option value="1">1</option>
    	<option value="2">2</option>
    	<option value="3">3</option>
    	<option value="4">4</option>
    	<option value="5">5</option>
    	<option value="6">6</option>
    	<option value="7">7</option>
    	<option value="8">8</option>
    	<option value="9">9</option>
    	<option value="10">10</option>
    	</select></div>
    	<div><select name="auto" onchange="Moltiplica(this.form.elements[\'furgoni\'],this.form.elements[\'auto\'],this.form.elements[\'presenze\'],this.form.elements[\'risultatofurgoni\'],this.form.elements[\'risultatomacchine\'])">
    	<option value="">==>>Scegli il numero di auto<<==</option>
    	<option value="1">1</option>
    	<option value="2">2</option>
    	<option value="3">3</option>
    	<option value="4">4</option>
    	<option value="5">5</option>
    	<option value="6">6</option>
    	<option value="7">7</option>
    	<option value="8">8</option>
    	<option value="9">9</option>
    	<option value="10">10</option>
    	</select></div>
    	<div><input type="hidden" name="presenze" value="';echo"$valore";echo'" /></div>
    	<div>Giorni in cui servono i furgoni <input type="text" name="risultatofurgoni" readonly="readonly"/></div>
    	<div>Giorni in cui servono le macchine <input type="text" name="risultatomacchine" readonly="readonly"/></div>	
    	</form>
    l'echo e la variabile, così come le \ ci sono perchè è una pagina php che contiene questo javascript.

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Dipende dai valori che assumono le varie variabili... in diverse condizioni val3 non viene mai decrementato

    Tieni presente anche che il valore dei campi select si ottiene con:

    valore = document.nomeDelForm.nomeDellaSelect.options[document.nomeDelForm.nomeDellaSelect.selectedIndex].value

    Ed inoltre non puoi utilizzare lo stesso nome per i campi e le variabili... il javascript non puo' indovinare a cosa pensi tu quando gli scrivi "furgoni"

    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

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.