In questo programma, se si clicca il pulsante "viaggia" e al prompt si danno i Km, la casella di testo di id="operazione" legge i calcoli con il parametro Km, mentre le due caselle di testo di id="KmPercorsi" e id="KmParziali", stranamente, non leggono neanche il solo valore dello stesso parametro Km, pur non bloccando il programma. Desidererei trovare una spiegazione. Grazie
lanvoel
codice:<HTML> <HEAD> <TITLE>Esempio133</TITLE> </HEAD> <BODY BGCOLOR="blanchedalmond"> <H3>definizione di metodi</H3><HR> Serbatoio: <INPUT TYPE="text" NAME="operazione" id="operazione" SIZE="20" VALUE="5 Litri"><br> Km percorsi: <input type="text" id="KmPercorsi" name="KmPercorsi" size="30"><br> Km parziali: <input type="text" id="KmParziali" name="KmParziali"size="30"> <BR> <SCRIPT TYPE="text/javascript"> function Automobile(marca,modello,colore,cilindrata) { this.marca=marca; this.modello=modello; this.colore=colore; this.cilindrata=cilindrata; this.trazione; //serbatoio viene inizializzato this.carburante=5.0; this.rifornimento = function (litri) { //controllo che non trabocchi if(this.carburante+(litri*1)>=50) this.carburante=50; else this.carburante+=(litri*1); operazione.value=this.carburante+" Litri"; } this.pieno = function () { this.carburante = 50; operazione.value=50+" Litri"; } this.viaggia = function(km) { //consuma 10 km con un litro //se minore di zero il metodo restituisce false if (this.carburante-(km/10)>=0) this.carburante-= km/10; else this.carburante=0; operazione.value=this.carburante+" Litri"; KmParziali.value= Km*1 KmPercorsi.value=KmPercorsi.value+ Km*1; } } //istanza di un oggetto punto var punto = new Automobile("Fiat","Punto","rosso",1200); </SCRIPT> <INPUT TYPE="button" VALUE="Fai il pieno" onclick="punto.pieno()"> <INPUT TYPE="button" VALUE=" Viaggia " onclick="punto.viaggia(prompt('Km percorsi',''))"> <INPUT TYPE="button" VALUE=" Rifornisci " onclick="punto.rifornimento(prompt('litri?',''))"><br><br> </BODY> </HTML>

Rispondi quotando